[tests] Mismatched .bicep generated in AzureBicepResourceTests.AsAzurePostgresFlexibleServerViaRunMode

Build Information
Build: https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_build/results?buildId=759660
Build error leg or test failing: Aspire.Hosting.Azure.Tests..AsAzurePostgresFlexibleServerViaRunMode
Pull request: https://github.com/dotnet/aspire/pull/5099
  Failed Aspire.Hosting.Azure.Tests.AzureBicepResourceTests.AsAzurePostgresFlexibleServerViaRunMode [30 ms]
  Error Message:
   Assert.Equal() Failure
                                 ↓ (pos 1390)
Expected: ···resource postgreSqlFirewallRule_T9qS4dcOa 'Microsoft.DBforPos···
Actual:   ···resource postgreSqlFlexibleServerDatabase_d6dHHd3yx 'Microsof···
                                 ↑ (pos 1390)
  Stack Trace:
     at Aspire.Hosting.Azure.Tests.AzureBicepResourceTests.AsAzurePostgresFlexibleServerViaRunMode() in /_/tests/Aspire.Hosting.Azure.Tests/AzureBicepResourceTests.cs:line 1433
--- End of stack trace from previous location ---

Error Message
Fill the error message using step by step known issues guidance.

{
  "ErrorMessage": "",
  "ErrorPattern": "Expected: .*resource postgreSqlFirewallRule",
  "BuildRetry": false,
  "ExcludeConsoleLog": false
}

Known issue validation
Build: :mag_right: https://dev.azure.com/dnceng-public/public/_build/results?buildId=759660
Error message validated: [Expected: .*resource postgreSqlFirewallRule]
Result validation: :white_check_mark: Known issue matched with the provided build.
Validation performed at: 7/29/2024 11:21:03 PM UTC

Report

Build
Definition
Test
Pull Request

762906
dotnet/aspire
Aspire.Hosting.Azure.Tests.AzureBicepResourceTests.AsAzurePostgresFlexibleServerViaRunMode
dotnet/aspire#5017

761326
dotnet/aspire
Aspire.Hosting.Azure.Tests.AzureBicepResourceTests.AsAzurePostgresFlexibleServerViaRunMode
dotnet/aspire#5110

759974
dotnet/aspire
Aspire.Hosting.Azure.Tests.AzureBicepResourceTests.AsAzurePostgresFlexibleServerViaRunMode
dotnet/aspire#5099

759660
dotnet/aspire
Aspire.Hosting.Azure.Tests.AzureBicepResourceTests.AsAzurePostgresFlexibleServerViaRunMode
dotnet/aspire#5099

Summary

24-Hour Hit Count
7-Day Hit Count
1-Month Count

1
4
4

From the test log file:
[xUnit.net 00:00:06.20]     Aspire.Hosting.Azure.Tests.AzureBicepResourceTests.AsAzurePostgresFlexibleServerViaRunMode [FAIL]
[xUnit.net 00:00:06.20]       Assert.Equal() Failure
[xUnit.net 00:00:06.20]                                        ↓ (pos 1390)
[xUnit.net 00:00:06.20]       Expected: ···resource postgreSqlFirewallRule_T9qS4dcOa 'Microsoft.DBforPos···
[xUnit.net 00:00:06.20]       Actual:   ···resource postgreSqlFlexibleServerDatabase_d6dHHd3yx 'Microsof···
[xUnit.net 00:00:06.21]                                        ↑ (pos 1390)
[xUnit.net 00:00:06.21]       Stack Trace:
[xUnit.net 00:00:06.21]         /_/tests/Aspire.Hosting.Azure.Tests/AzureBicepResourceTests.cs(1433,0): at Aspire.Hosting.Azure.Tests.AzureBicepResourceTests.AsAzurePostgresFlexibleServerViaRunMode()
[xUnit.net 00:00:06.21]         --- End of stack trace from previous location ---
[xUnit.net 00:00:06.21]       Output:
[xUnit.net 00:00:06.21]         targetScope = 'resourceGroup'
[xUnit.net 00:00:06.21]
[xUnit.net 00:00:06.21]         @description('')
[xUnit.net 00:00:06.21]         param location string = resourceGroup().location
[xUnit.net 00:00:06.21]
[xUnit.net 00:00:06.21]         @description('')
[xUnit.net 00:00:06.21]         param administratorLogin string
[xUnit.net 00:00:06.21]
[xUnit.net 00:00:06.21]         @secure()
[xUnit.net 00:00:06.21]         @description('')
[xUnit.net 00:00:06.21]         param administratorLoginPassword string
[xUnit.net 00:00:06.21]
[xUnit.net 00:00:06.21]         @description('')
[xUnit.net 00:00:06.21]         param keyVaultName string
[xUnit.net 00:00:06.21]
[xUnit.net 00:00:06.21]
[xUnit.net 00:00:06.21]         resource keyVault_IeF8jZvXV 'Microsoft.KeyVault/vaults@2022-07-01' existing = {
[xUnit.net 00:00:06.21]           name: keyVaultName
[xUnit.net 00:00:06.21]         }
[xUnit.net 00:00:06.21]
[xUnit.net 00:00:06.21]         resource postgreSqlFlexibleServer_hFZg1J8nf 'Microsoft.DBforPostgreSQL/flexibleServers@2023-03-01-preview' = {
[xUnit.net 00:00:06.21]           name: toLower(take('postgres${uniqueString(resourceGroup().id)}', 24))
[xUnit.net 00:00:06.21]           location: location
[xUnit.net 00:00:06.21]           tags: {
[xUnit.net 00:00:06.21]             'aspire-resource-name': 'postgres'
[xUnit.net 00:00:06.21]           }
[xUnit.net 00:00:06.21]           sku: {
[xUnit.net 00:00:06.21]             name: 'Standard_B1ms'
[xUnit.net 00:00:06.21]             tier: 'Burstable'
[xUnit.net 00:00:06.21]           }
[xUnit.net 00:00:06.21]           properties: {
[xUnit.net 00:00:06.21]             administratorLogin: administratorLogin
[xUnit.net 00:00:06.21]             administratorLoginPassword: administratorLoginPassword
[xUnit.net 00:00:06.21]             version: '16'
[xUnit.net 00:00:06.21]             storage: {
[xUnit.net 00:00:06.21]               storageSizeGB: 32
[xUnit.net 00:00:06.21]             }
[xUnit.net 00:00:06.21]             backup: {
[xUnit.net 00:00:06.21]               backupRetentionDays: 7
[xUnit.net 00:00:06.21]               geoRedundantBackup: 'Disabled'
[xUnit.net 00:00:06.21]             }
[xUnit.net 00:00:06.21]             highAvailability: {
[xUnit.net 00:00:06.21]               mode: 'Disabled'
[xUnit.net 00:00:06.21]             }
[xUnit.net 00:00:06.21]             availabilityZone: '1'
[xUnit.net 00:00:06.21]           }
[xUnit.net 00:00:06.21]         }
[xUnit.net 00:00:06.21]
[xUnit.net 00:00:06.21]         resource postgreSqlFirewallRule_t5EgXW1q4 'Microsoft.DBforPostgreSQL/flexibleServers/firewallRules@2023-03-01-preview' = {
[xUnit.net 00:00:06.21]           parent: postgreSqlFlexibleServer_hFZg1J8nf
[xUnit.net 00:00:06.21]           name: 'AllowAllAzureIps'
[xUnit.net 00:00:06.21]           properties: {
[xUnit.net 00:00:06.21]             startIpAddress: '<IP_ADDRESS>'
[xUnit.net 00:00:06.21]             endIpAddress: '<IP_ADDRESS>'
[xUnit.net 00:00:06.21]           }
[xUnit.net 00:00:06.21]         }
[xUnit.net 00:00:06.21]
[xUnit.net 00:00:06.21]         resource postgreSqlFlexibleServerDatabase_d6dHHd3yx 'Microsoft.DBforPostgreSQL/flexibleServers/databases@2023-03-01-preview' = {
[xUnit.net 00:00:06.21]           parent: postgreSqlFlexibleServer_hFZg1J8nf
[xUnit.net 00:00:06.21]           name: 'db'
[xUnit.net 00:00:06.21]           properties: {
[xUnit.net 00:00:06.21]           }
[xUnit.net 00:00:06.21]         }
[xUnit.net 00:00:06.21]
[xUnit.net 00:00:06.21]         resource keyVaultSecret_Ddsc3HjrA 'Microsoft.KeyVault/vaults/secrets@2022-07-01' = {
[xUnit.net 00:00:06.21]           parent: keyVault_IeF8jZvXV
[xUnit.net 00:00:06.21]           name: 'connectionString'
[xUnit.net 00:00:06.21]           location: location
[xUnit.net 00:00:06.21]           properties: {
[xUnit.net 00:00:06.21]             value: 'Host=${postgreSqlFlexibleServer_hFZg1J8nf.properties.fullyQualifiedDomainName};Username=${administratorLogin};Password=${administratorLoginPassword}'
[xUnit.net 00:00:06.21]           }
[xUnit.net 00:00:06.21]         }
[xUnit.net 00:00:06.21]

Looking at the expected bicep in https://github.com/dotnet/aspire/blob/c3b47ef65b4234693f44c6255df7e9d4ab87a43c/tests/Aspire.Hosting.Azure.Tests/AzureBicepResourceTests.cs#L1397-L1431
.. the expected has:
resource postgreSqlFirewallRule_T9qS4dcOa 'Microsoft.DBforPostgreSQL/flexibleServers/firewallRules@2023-03-01-preview' = {
  parent: postgreSqlFlexibleServer_hFZg1J8nf
  name: 'AllowAllIps'
  properties: {
    startIpAddress: '<IP_ADDRESS>'
    endIpAddress: '<IP_ADDRESS>'
  }
}

resource postgreSqlFlexibleServerDatabase_QJSbpnLQ9 'Microsoft.DBforPostgreSQL/flexibleServers/databases@2023-03-01-preview' = {
  parent: postgreSqlFlexibleServer_hFZg1J8nf
  name: 'dbName'
  properties: {
  }
}

.. but the generated manifest has this instead:
resource postgreSqlFlexibleServerDatabase_d6dHHd3yx 'Microsoft.DBforPostgreSQL/flexibleServers/databases@2023-03-01-preview' = {
  parent: postgreSqlFlexibleServer_hFZg1J8nf
  name: 'db'
  properties: {
  }
}

The following code suggests that AllowAllIps is added for Run mode, but it is not being added here?
https://github.com/dotnet/aspire/blob/c3b47ef65b4234693f44c6255df7e9d4ab87a43c/src/Aspire.Hosting.Azure.PostgreSQL/AzurePostgresExtensions.cs#L73-L78
cc @mitchdenny

@radical this build failure came from a PR, how do we know it wasn't something in the PR that caused it to fail?
(the error is surprising actually)

@radical this build failure came from a PR, how do we know it wasn't something in the PR that caused it to fail?
(the error is surprising actually)

Yeah, this was hit in https://github.com/dotnet/aspire/pull/5099 which doesn't seem to have any related changes, AFAICS.

@mitchdenny this has been hit on 3 different PRs now.

Yep. I'm going to disable the test and try to see if I can figure out what is going on.


Filtering by tag name is broken

This is a result of the changes here https://github.com/resin-io-modules/rendition/pull/362


Prebundling dependencies from multiple package.json's

Is your feature request related to a problem? Please describe.
I have a repo that looks something like this:
project
├── app
│   ├── package.json
│   └── tsconfig.json
│   └── index.html
│   └── app.ts
└── package
    ├── package.json
    └── tsconfig.json
    └── foo.ts

I'm running vite from app as root, but app.ts imports foo.ts. Vite ends up prebundling the deps in app/package.json but not package/package.json. This causes foo.ts's deps to be loaded from<EMAIL_ADDRESS>instead of /node_modules/. Although all the dependencies get served, foo.ts's dependencies aren't converted to ESM which causes errors in the app.
Describe the solution you'd like
Is there a way Vite can consider all dependencies in the project dependency graph rather than relying solely on the root package.json?
Describe alternatives you've considered
Unfortunately there isn't an easy way to combine the dependencies myself in the project because the contents of one of the directories is generated code (including the package.json).
Additional context
Add any other context or screenshots about the feature request here.

Try adding these sub packages to optimizeDeps.link (they must be resolvable from the node algorithm - i.e. linked as workspace by yarn or pnpm)

Try adding these sub packages to optimizeDeps.link (they must be resolvable from the node algorithm - i.e. linked as workspace by yarn or pnpm)

My actual directory structure is a bit more complicated (vite is run from inside a child directory) and I don't think workspaces can work. I created a quick repro here: https://github.com/hpx7/vite-nested-packages
Is there a way other than workspaces to handle this?

My actual directory structure is a bit more complicated (vite is run from inside a child directory) and I don't think workspaces can work. I created a quick repro here: https://github.com/hpx7/vite-nested-packages
Is there a way other than workspaces to handle this?

Obviously a different methodology, but in case helpful: I would note that parcel is able to handle this out of the box (running parcel index.html instead of npx vite works)

Obviously a different methodology, but in case helpful: I would note that parcel is able to handle this out of the box (running parcel index.html instead of npx vite works)

Because Parcel crawls your app and bundles everything... and if Vite did that, it would defeat the purpose.

Because Parcel crawls your app and bundles everything... and if Vite did that, it would defeat the purpose.

And why wouldn't workspace work in this case? I would strongly recommend migrating to yarn/pnpm workspaces for a proper monorepo setup. That's what Vite is designed to work with.

And why wouldn't workspace work in this case? I would strongly recommend migrating to yarn/pnpm workspaces for a proper monorepo setup. That's what Vite is designed to work with.

Ok I updated the repro to use Yarn 2 which supports nested workspaces, but I think the issue is that I'm running vite from the nested directory -- I can't find a way to pass optimizeDeps.link a reference to the parent workspace

Ok I updated the repro to use Yarn 2 which supports nested workspaces, but I think the issue is that I'm running vite from the nested directory -- I can't find a way to pass optimizeDeps.link a reference to the parent workspace

Ok turns out I was able to get this working by adding
optimizeDeps: { link: ["../"] }

Given optimizeDeps.link is marked as deprecated, is this safe to use?

Ok turns out I was able to get this working by adding
optimizeDeps: { link: ["../"] }

Given optimizeDeps.link is marked as deprecated, is this safe to use?

Let me know if I should file a separate ticket for this, but it looks like there is a bug involving alias and including the same dep from multiple places in the repo.
I have this alias defined:
alias: { vue: "vue/dist/vue.esm.js" }

and I get the following error:
[vite] Internal server error: Failed to load url vue/dist/vue.esm.js/dist/vue.esm.js

It looks like Vite is mistakenly applying the alias twice.

Let me know if I should file a separate ticket for this, but it looks like there is a bug involving alias and including the same dep from multiple places in the repo.
I have this alias defined:
alias: { vue: "vue/dist/vue.esm.js" }

and I get the following error:
[vite] Internal server error: Failed to load url vue/dist/vue.esm.js/dist/vue.esm.js

It looks like Vite is mistakenly applying the alias twice.

I pushed a new repro of the above issue to https://github.com/hpx7/vite-nested-packages

I pushed a new repro of the above issue to https://github.com/hpx7/vite-nested-packages

To close the loop here -- this feature is supported in Vite via optimizeDeps.link. It works fine without using yarn/pnpm workspaces -- you just need a package.json with type: "module" in the linked directory. The only open question here is whether optimizeDeps.link should be un-deprecated and documented.
I'll create a separate issue for the alias issue with vue-property-decorator

To close the loop here -- this feature is supported in Vite via optimizeDeps.link. It works fine without using yarn/pnpm workspaces -- you just need a package.json with type: "module" in the linked directory. The only open question here is whether optimizeDeps.link should be un-deprecated and documented.
I'll create a separate issue for the alias issue with vue-property-decorator

It has been un-deprecated already: https://vitejs.dev/config/#optimizedeps-link
Closing this then!

It has been un-deprecated already: https://vitejs.dev/config/#optimizedeps-link
Closing this then!


⚠ Adam Brand Music has degraded performance

In 29d8b7d, Adam Brand Music (https://adambrandmusic.com) experienced degraded performance:

HTTP code: 200
Response time: 5012 ms

Resolved: Adam Brand Music performance has improved in e205f17 after 6 minutes.


Add code coverage badge

Add a badge to Readme.md for code coverage

@CoderNamedHendrick would you like to work on this as well?

Sure, leave it to me

#15

Fixed with #15 and my pushes.


Sanitize user input for ResourceLocation and RootNamespace attributes

Fixes https://github.com/aspnet/Home/issues/2792

Thanks @hishamco. Closing this PR per the comment on the related issue.


Attempt to set email in resource owner

Following up discussion in #29 implementation of "getEmail" on ResourceOwner which:

does not use additional configuration options on the Provider
automatically tries to get the email address, but emulates the "return null if not available" behaviour of other providers
hides access denied when downloading email implicitly when calling getResourceOwner, but throws on any other failure from API
throws on access denied when getResourceOwnerEmail is called explicitly.

Potential problems:

always two requests are done when resource data is downloaded, and the developer has no way of disabling email download, even if they know it will fail
users will not be getting email and no warning or error if r_emailscope is missing, but that behaviour is consistent with other providers.

Idea for consideration: separate getResourceOwner into getResourceOwnerProfile and getResourceOwnerEmail, make those methods public. getResourceOwner would call the other two and combine result. Problem is changing method contracts from the parent class - AbstractProvider.

@stevenmaguire could you tag a new release please?
I would hate to have dev-master in composer.json on production.


TS2769: No overload matches this call when building Vue 2.7 TS components using scirpt setup with webpack

Version
2.7.4
Reproduction link
github.com
Steps to reproduce

Clone the reproduction repo git clone https://github.com/iraklisg/mix-ts-vue-script-setup.git
Build the assets npm run dev

What is expected?
To compile the assets without errors
What is actually happening?
The following error occurs:
[tsl] ERROR in /home/node/app/resources/js/components/HelloWorld.vue.ts(4,3)
      TS2769: No overload matches this call.
  The last overload gave the following error.
    Argument of type '{ __name: string; setup(this: void, __props: Readonly<Readonly<LooseRequired<{}>>>): { __sfc: boolean; }; }' is not assignable to parameter of type 'ComponentOptionsWithProps<ComponentPropsOptions<Data>, { __sfc: boolean; }, Data, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {}, { ...; } | {}>'.
      Object literal may only specify known properties, but '__name' does not exist in type 'ComponentOptionsWithProps<ComponentPropsOptions<Data>, { __sfc: boolean; }, Data, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {}, { ...; } | {}>'. Did you mean to write 'name'?

The assets are build using webpack (laravel-mix)

Laravel Mix Version: 6.0.49
Node Version: 18.1.0
NPM Version: 8.8.0:
OS: Linux

Using the defineComponent helper, the assets compile without errors (see commit 2e9a15bfaa6227a57b48e08bc4704dee156e8e17)
// This compiles without errors

<script lang="ts">
import { defineComponent } from 'vue';
export default defineComponent({
    name: "HelloWorld",
})

The error only occurs when migrating component to use <script setup>. However, the assets are actually successfully compiled.
I have also tried to use the shims from Vue 3 but without luck
declare module '*.vue' {
  import { defineComponent } from 'vue';

  export default ReturnType<typeof defineComponent>;
}

#Hello World
The co-pilot has an assembly for the first pilot to find and follow the rules to contribute,professors and experienced participants solve the problem of the co-pilot process work for the first,and at the end of combining common contributions and launching the project,the safety phase is false. Analysis, file, all participants in the process of creating a project and a description of the contribution for status and role, then the transition to the management system outside and search, search, search
One key in and next. 🤞
https://github.com/orgs/github-community/discussions/18153#discussion-4131248


Replace 0L with a casted nullptr

https://github.com/godotengine/godot/pull/37521/files#r402405178

Thanks!


Allow players to set a default group - Very Low Priority

This is a low priority for now. Essentially, once someone has chosen a group to be their default they can just use /ctf or /ctr without specifying group.

Made these changes today and tested them and it works
Looks like my NameLayer pull is borked somehow
https://github.com/Civcraft/NameLayer/pull/69
Here is the Citadel Pull
https://github.com/Civcraft/Citadel/pull/68


Add Github Actions for CI

Coverage remained the same at 100.0% when pulling 9baa8ede6df47ed35882db1ab775f23c85ef3600 on thofma:master into 025cf7e31d2e5cd36c07e95321dbbeaaba03738d on JuliaLang:master.

Is there something else to address?


"Failed to connect to mongoDB MongoParseError: Invalid connection string","v":1

What I am doing wrong?

Sorry for late response! 😅
Just to make sure, have you set the MONGO_DB_URL environment variable?

Now my question is how i can host API to bot or is there any API online ?
czw., 30 kwi 2020, 02:00 użytkownik Mikołaj Kalwa<EMAIL_ADDRESS>napisał:

Sorry for late response! 😅
Just to make sure, have you set the MONGO_DB_URL environment variable?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/mikolajkalwa/GamesDealsBot/issues/6#issuecomment-621531629,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APGFZZN5IM7YA6AGU3R6253RPC5P7ANCNFSM4MLMEWRA
.


NOC-114 updates to Career Profile Employment by Region table

Please ensure your PR originates from noc branch.


Add test(s) to cover AttributeDict code not exercised by existing tests

add_entries()
https://github.com/epigen/looper/issues/40

Better coverage with https://github.com/epigen/looper/pull/65/


Files with long lines

The attached file hangs the editor for ~1 second on open.
If you rename the file to test.lua or test.js it crashes the editor instantly on open.
test.txt

@DoctorGester that's indeed an interesting finding.
With Lua and JavaScript throws Fatal error in src/rencache.c: exhausted command buffer, but not for text file(s).

This is an issue with how the renderer cache handles very-long strings, it should be trivial to fix once I get around to it.

Awesome :+1:

Both the long loading time and crashing on long lines should be fixed now. Note these included changes to the C side of things and thus a recompile is required; I've attached recompiled binaries to this message:
lite_master.zip


Update azure-monitor-limits-alerts.md

Adding guidance to use log search alerts instead of activity log alerts if more rules are needed.

@rboucher
Can you review the proposed changes?
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

@Rob @.***> - kind reminder
From: Courtney Wales @.>
Sent: Tuesday, July 18, 2023 6:10 PM
To: MicrosoftDocs/azure-docs @.>
Cc: Yair Gil @.>; Mention @.>
Subject: Re: [MicrosoftDocs/azure-docs] Update azure-monitor-limits-alerts.md (PR #112357)
@rboucherhttps://github.com/rboucher
Can you review the proposed changes?
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-teamhttps://github.com/orgs/MicrosoftDocs/teams/public-repo-pr-review-team

Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/azure-docs/pull/112357#issuecomment-1640411297, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AM6MNYRY4NFCIFRC45EATJTXQ2RLHANCNFSM6AAAAAA2OEF7BY.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

#sign-off


Keep scroll position when updating a table with the same songs

This requires re-architecturing to use setRowData() to update a table.

Should be addressed by Row ID.

Closed by #38


CORS and CSP

I have an error in my mosparo box (No submit token available. Validation of this form is not possible).
Looking in Firefox console I see this error: Ensure CORS response header values are valid.
Searching on Google I entered in my .htaccess file the following instruction:
<IfModule mod_headers.c>    Header set Access-Control_Allow-Origin "mosparo_pah_on_my_website" </IfModule>
But it does not work...

Hi @mpaglia0
Thank you very much for your question.
Can you verify that your website's domain is correctly configured in your project's Hosts settings in mosparo? You should only configure the domain without protocol (like https://) and path (like /contact-form).

This setting sets the correct CORS header on the mosparo side, so you should not have trouble including mosparo on your website.
Kind regards,
zepich

Yes, it works!
thanks

Hi @mpaglia0
Perfect, thank you very much for letting me know!
Have a nice day!
Kind regards,
zepich


Set github_branch to trunk

Fixes #33
- What I did
Searched Docsy theme for master, and found github_branch setting need to be changed.
- How I did it
Set github_branch= "trunk" in config.toml
- How to verify it
Browse to docs and click on "Edit this page"
- Description for the changelog
Set github_branch to trunk

Thank you - was expecting to have to do this today and you beat me to it!

Looks like this was closed without merging :/


Receiving error while using this on a markdown with twitter link

    "@raae/gatsby-remark-oembed": "^0.0.7",
    "gatsby": "^2.8.3",
    "gatsby-transformer-remark": "^2.3.12",

Have more installed, happy to share
error gatsby-remark-oembed: Error processing links

  TypeError: Cannot read property 'replace' of undefined

  - index.js:10 module.exports
    [starter-gatsby-blog]/[gatsby-source-filesystem]/[slash]/index.js:10:13

  - create-file-path.js:39 module.exports
    [starter-gatsby-blog]/[gatsby-source-filesystem]/create-file-path.js:39:61

  - index.js:24 module.exports
    [starter-gatsby-blog]/[@raae]/gatsby-remark-oembed/index.js:24:20

  - next_tick.js:68 process._tickCallback
    internal/process/next_tick.js:68:7

happens with just "@raae/gatsby-remark-oembed" in the plugins of "gatsby-transformer-remark" as well as with the given samples for the configuration.

Thank you for letting us know, do you have a public repo I could look at?

Nudge @patroza?

hi @raae sorry for late reply; don't have the project public right now, but what I found so far is that it probably doesnt support the markdown content to live on contentful instead of on disk?
ie I use "gatsby-source-contentful" not -filesystem

So it looks like contentful based files have no relativePath property, while gatsby-source-filesystem expects it to exist.
if in gatsby-source-filesystem I replace the return fileNode statement with:
return fileNode.internal.type !==File ? undefined : fileNode
the app works, and the oembed works. it logs:
info gatsby-remark-oembed: Successfull embeds: 1 | Path: undefined

Thank you for that insight.
This should be easily fixed as I was only trying to make a more informative logging experience. In this casePath: undefinded. So it is not crucial to make the plugin work, I'll let you know when this is fixed.

I am now using the markdown node's id, instead of trying to get the path.
Could you test if it works with contentful by npm install raae/gatsby-remark-oembed#logging-bug-#73 to use the branch with the fix?

I managed to create a contentful space to test it out and it works fine.

Great to hear @raae, sorry for late response, missed notification somehow


Mesinesp development and training data sets have been added.

https://zenodo.org/search?page=1&size=20&q=mesinesp, Mesinesp has Medical Semantic Indexed records in Spanish.  Indexing is done using DeCS codes, a sort of Spanish equivalent to MeSH terms.
The Mesinesp (Spanish BioASQ track, see https://temu.bsc.es/mesinesp) development set has a total of 750 records.
The Mesinesp (Spanish BioASQ track, see https://temu.bsc.es/mesinesp) training set has a total of 369,368 records.

It'll be new pull request with new commits.


sql2o can't rolback ?

The "connection.rollback()" has execute,But data still updated.
EG :
    public void write() {
        try (Connection connection = sql2o.beginTransaction()) {
            Query q = connection.createQuery(" UPDATE `users` set name = 'alice' where id = 1");
            q.setAutoDeriveColumnNames(true);
            q.executeUpdate();
            // DO SAVE
            connection.commit();
            // TEST DATA ROLLBACK, The "connection.rollback()" has execute but data still updated.
            connection.rollback();
        }
    }

Hey @mailtous ,
the connection.commit(); writes all data to database, only all changes until last commit can be rollbacked.
e.g.
    public void write() {
        try (Connection connection = sql2o.beginTransaction()) {
            Query q = connection.createQuery(" UPDATE `users` set name = 'alice' where id = 1");
            q.setAutoDeriveColumnNames(true);
            q.executeUpdate();
            // DO SAVE
            connection.commit();

            Query q = connection.createQuery(" UPDATE `users` set name = 'dirk' where id = 1");
            q.executeUpdate();
            // TEST DATA ROLLBACK, The "connection.rollback()" is executed, the name is alice, not dirk.
            connection.rollback();

        }
    }

@mbraunerDE
Thanks your answer~!  BUT...
 public void write() {
        try (Connection connection = sql2o.beginTransaction()) {
            Query q1 = connection.createQuery(" UPDATE `users` set name = 'alice' where id = 1");
            q1.setAutoDeriveColumnNames(true);
            q1.executeUpdate();
            // DO SAVE
            connection.commit();
            // TEST DATA  name is alice

            Query q2 = connection.createQuery(" UPDATE `users` set name = 'dirk' where id = 1");
            q2.executeUpdate();

            // next row need add "connection.commit()", to real save "dirk"  to DB
           connection.commit();

            // TEST DATA ROLLBACK, The "connection.rollback()" is executed, the name is alice, not dirk.
            connection.rollback();
        }
    }

** TEST TWO: **
 public void write() {
        try (Connection connection = sql2o.beginTransaction()) {
            Query q1 = connection.createQuery(" UPDATE `users` set name = 'alice' where id = 1");
            q1.setAutoDeriveColumnNames(true);
            q1.executeUpdate();
            // DO SAVE
            connection.commit();
            // TEST DATA  name is alice

            Query q2 = connection.createQuery(" UPDATE `users` set name = 'dirk' where id = 1");
            q2.executeUpdate();

            // q2 is executed but not commit, so  name of dirk is not save to DB.
        }
    }

Hey,
you added a second commit(), so there the data will be saved and cannot be rollbacked ...
I recommend you this blog entry https://www.journaldev.com/23932/sql-commit-sql-rollback


Save perf_q to database

This task involves creating a model and saving events from perf_q in record.py:
https://github.com/MLDSAI/puterbot/blob/main/puterbot/record.py#LL591C10-L591C10

@apgorton thank you for finding the source of https://github.com/MLDSAI/OpenAdapt/issues/93 ! I believe this is the solution. Let's treat performance events just like Screenshots/InputEvents/WindowEvents and save them to a new table. That way there won't be any special queue left over when everything is shutting down and that problem goes away.
What do you think?

I think this approach would address https://github.com/MLDSAI/OpenAdapt/issues/93 and is a good way to do that while implementing this one. I'll make the changes.


Support for Windows?

Hi, apologies if I am not posting at the right place.
Would like to ask if I can locally host the API on my Windows machine?
The makefile can't be run on Windows.
Any advice or modification I need to make?
Thank you.
Jeff

Hi there, sorry for the late reply. The api should work on windows, especially if you're using the docker container. Do the make docker-build and make docker-start-api commands also fail? Worst case, you can avoid dealing with the source code here, and pull the latest image directly from our repository.


Google Charts API is deprecated and not available since March 19, 2019

Google Charts API has a nice warning about that:

Warning: This API is deprecated and is scheduled to be turned off on March 14, 2019. Please use the actively maintained Google Charts API instead.

And returns 502 instead of qr-code:

Just replace line 112 with return "https://api.qrserver.com/v1/create-qr-code/?data=$urlencoded&size=${width}x${height}&ecc=$level";

Thanks, has been commited: 4f80232ee76e78eae9977236ee8c7fda7518322a

Thanks! Would be great to also have a way to define your own URL for QR code generation (we backed off to our internal URL), to have a choice between open solutions or not rely on them altogether, as they work today and might not work tomorrow. But that's a different story. :)

Of cause you can generate your own QR code URL. Just use the secret (via createSecret()) and build your own URL. The built-in function is just a small help for convenience, but nobody is forced to use it 😄


installation problem

Sorry I couldnt install.
sudo apt-get purge nodejs
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
nodejs*
0 upgraded, 0 newly installed, 1 to remove and 46 not upgraded.
After this operation, 62,5 MB disk space will be freed.
Do you want to continue? [Y/n] Y
(Reading database ... 314875 files and directories currently installed.)
Removing nodejs (9.11.1-1nodesource1) ...
dpkg: warning: while removing nodejs, directory '/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator' not empty so not removed
Processing triggers for man-db (2.7.5-1) ...
nerkn@nerkn ~/sil $ rm -rf /usr/lib/node_modules
rm: cannot remove '/usr/lib/node_modules': Permission denied
nerkn@nerkn ~/sil $ sudo rm -rf /usr/lib/node_modules
nerkn@nerkn ~/sil $ sudo apt-get install nodejs
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
nodejs
0 upgraded, 1 newly installed, 0 to remove and 46 not upgraded.
Need to get 0 B/12,8 MB of archives.
After this operation, 62,5 MB of additional disk space will be used.
Selecting previously unselected package nodejs.
(Reading database ... 310211 files and directories currently installed.)
Preparing to unpack .../nodejs_9.11.1-1nodesource1_amd64.deb ...
Unpacking nodejs (9.11.1-1nodesource1) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up nodejs (9.11.1-1nodesource1) ...
nerkn@nerkn ~/sil $  npm install sleep

<EMAIL_ADDRESS>install /home/nerkn/sil/node_modules/sleep
node-gyp rebuild

make: Entering directory '/home/nerkn/sil/node_modules/sleep/build'
CXX(target) Release/obj.target/node_sleep/sleep.o
make: g++: Command not found
node_sleep.target.mk:95: recipe for target 'Release/obj.target/node_sleep/sleep.o' failed
make: *** [Release/obj.target/node_sleep/sleep.o] Error 127
make: Leaving directory '/home/nerkn/sil/node_modules/sleep/build'
gyp ERR! build error
gyp ERR! stack Error: make failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack     at ChildProcess.emit (events.js:180:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:209:12)
gyp ERR! System Linux 4.13.0-32-generic
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/nerkn/sil/node_modules/sleep
gyp ERR! node -v v9.11.1
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm WARN enoent ENOENT: no such file or directory, open '/home/nerkn/sil/package.json'
npm WARN sil No description
npm WARN sil No repository field.
npm WARN sil No README data
npm WARN sil No license field.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR!     /home/nerkn/.npm/_logs/2018-04-09T13_40_40_779Z-debug.log
nerkn@nerkn ~/sil $

It says there:
make: g++: Command not found

You need to install the tools to be able to build C++ modules: https://github.com/nodejs/node-gyp#on-unix


cluster error: read admin.conf error in guest: open /root/.sealos/default/etc/admin.conf: no such file or directory

Detailed description of the question.
sealos run labring/kubernetes:v1.25.0 labring/helm:v3.8.2 labring/calico:v3.24.1 \

 --masters <IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS> \
 --nodes <IP_ADDRESS>,<IP_ADDRESS> -p '123456'

2023-04-12T11:28:25 info sync new version copy pki config: /var/lib/sealos/data/default/pki /root/.sealos/default/pki
2023-04-12T11:28:25 info sync new version copy etc config: /var/lib/sealos/data/default/etc /root/.sealos/default/etc
2023-04-12T11:28:25 info start to install app in this cluster
are you sure to override these following apps?
labring/kubernetes:v1.25.0
labring/helm:v3.8.2
labring/calico:v3.24.1	 Yes [y/yes], No [n/no] : y
2023-04-12T11:29:32 info Executing pipeline MirrorRegistry in InstallProcessor.
[1/1]copying files to <IP_ADDRESS>:22 100% [===============] (0/273, 0 it/min)2023-04-12T11:30:12 error Applied to cluster error: read admin.conf error in guest: open /root/.sealos/default/etc/admin.conf: no such file or directory
Error: read admin.conf error in guest: open /root/.sealos/default/etc/admin.conf: no such file or directory
read admin.conf error in guest: open /root/.sealos/default/etc/admin.conf: no such file or directory
Some reference materials you see.
No response

Which version?


Vacuum - Return to Home support

Hi @resoai,
The toggle vacuum tile doesn't support return to home service vacuum.return_to_base. Could you please add support for that?

Current vacuum tile acts as a switch only so it does not have many features. I don't have a vacuum myself so even current implementation was done blindly.

I propose toggling between turn_on and return_to_base. This is how it used to work when using a switch tile before the change in HASS vacuum architecture.
Still think a larger tile based on media_player tile is the way to go eventually. You need no logic, just buttons for play, pause, stop, return to base, locate and spot clean (each button has a service call only). And a fan speed selector to replace the source select.

For reference, this is how HASS UI vacuum looks while vacuum is cleaning. The toggle button changes to "return to base" from "start cleaning". So yeah, we should toggle between those.

Detailed view shows all buttons and fan speed selector.

Not all of the vacuums support "return to base" if I understand correctly. You can see that I already had some logic for various ones.


Extension issue

Issue Type: Bug
Extension Name: vscode-eslint
Extension Version: 2.1.1
OS Version: Darwin x64 19.4.0
VSCode version: 1.41.1

:warning: We have written the needed data into your clipboard. Please paste! :warning:
{
	"messages": [],
	"activationTimes": {
		"codeLoadingTime": 41,
		"activateCallTime": 15,
		"activateResolvedTime": 0,
		"activationReason": {
			"startup": false,
			"extensionId": {
				"value": "dbaeumer.vscode-eslint",
				"_lower": "dbaeumer.vscode-eslint"
			},
			"activationEvent": "*"
		}
	},
	"runtimeErrors": [
		{
			"name": "Error",
			"message": "Language client is not ready yet"
		}
	]
}

@subbiah-logichub can you reproduce this? If so can you share the repository?


Enable autobuild of pull requests

Enable the Read the Docs autobuild feature to preview the changes made in a pull request on the web instead of having to build locally: https://docs.readthedocs.io/en/latest/guides/autobuild-docs-for-pull-requests.html
To do this

The maintainer needs to go to https://readthedocs.org/projects/event-organisation-guide/
Click the Admin button
Go to Advanced Settings
Check the box next to "Build pull requests for this project "

(I am also happy to be added as a maintainer on Read the Docs if that is helpful.)

ok - this is done
And I have added you as a maintainer by adding the rainsworth user


TAN Status

I'm evaluating Dragonboat for an application and I was wondering what the status of the tan storage engine is? It looks like MatrixOne is using it here.
If I'm starting from scratch, is it generally considered stable enough that I should use it rather than the Pebble implementation? My application has large writes (which are broken up into multiple smaller messages) so the reduced write amplification is appealing.

Hi @benbjohnson
Tan was developed in early 2021, a few users have been using it for 12-18 months. My understanding is that no data corruption bug got reported and I am not aware of any pending issue. If that is a strong enough indicator, you may consider tan as stable. Another factor you may want to consider is that lot of the Tan code is derived from pebble, which is pretty stable I'd say.
For myself, I'd definitely use it in my own production projects.
Please let me know if you see anything broken/strange. If you have time, maybe read the code and provide some review comments, that will be highly appreciated. Thanks.


Flow dev doesnt use contracts added with Flow config

Problem
I downloaded and added FungibleToken and FlowToken contracts via flow config then ran flow dev. I expected this to work but instead it didn't and my flow.json changed so that FungibleToken and FlowToken were no longer aliased.
Steps to Reproduce
Video to reproduce this from nothing.

Acceptance Criteria
I think this setup should probably work.

Yeah noticed that yesterday, related to: https://github.com/onflow/flow-cli/issues/861
Will provide a fix in a day or so.

The idea was that you no longer manually configure flow.json with flow dev. The problem is when you want to use aliases.

Related to:  #870


Feature: Make more explicit warnings when compiling the manifest

add warn method to dsl
emit warnings for templating failures

added in 2.0.0


Adding the complex greeting card

Second version of greeting card for A/B testing.

Inconsequential file.  I'll squash after tests pass.

Inconsequential file.  I'll squash after tests pass.


Fix LogEntry.changes_dict() to return {} when json.loads() returns None

LogEntry.changes_str raises an exception when viewing the new "accessed" AuditLog objects with no changes. This PR fixes LogEntry.changes_dict() so it always returns a dict, even if json.loads() returns None.
This PR fixes #471 which has the backtrace and more details :+1:

Thanks @tykling for reporting the issue and preparing the fix.
Please consider to:

Add a test for the fix
Add changelog entry in https://github.com/jazzband/django-auditlog/blob/master/CHANGELOG.md

done

@tykling Thanks for the update. Please add a regression test. I mean you need to add a test that fails without your fix to show what problem you are fixing.

I did and it does

Ah Sorry.  Thanks @tykling :+1:


Reduce CPU overhead of gossip

This reduces the CPU usage by ~3.8%.
This was achieved by strategically replacing Rust's standard hash function with the one from the ahash crate. I've only done this where it matters, that is - I haven't replaced it everywhere, just in places where it makes a measurable real world impact.
ahash should also be DoS-resistant, so this should essentially be free performance.

bot merge


node bot.js error

Please help this is very annoying

i am also getting this error, perhaps the winston library updated and is not backwards compatible?

@MrN00BZ i found the solution to the issue, in another issue.

Change the code:
from
logger.add(logger.transports.Console
logger.add(new logger.transports.Console
it should work now

Alright, I no longer get the error but the bot is still offline on the channel.


@BeanParam + @QueryParam don't work with Dropwizard-guice

Dropwizard version: 1.0.0, dropwizard-guice version: <IP_ADDRESS>
Given:
Resource method containing "@BeanParam"-annotated parameter, each field of the parameter's class is annotated with "@QueryParam(...)"
When server is running, values passed as query parameters to request are not passed to the resource method. The bean arrives with all fields' default (null) values.
Simple demo app (requires gradle)
Try to run main methods of GuiceApp and NoGuiceApp from your IDE and send get request to "localhost:8080/?foo=foo&bar=bar" to observe the issue.

This is an interesting problem. It looks like w/ Guice the org.vmd408.DemoParams class is being instantiated by Guice and taking a different code path then w/ just HK2. Check out org.glassfish.jersey.server.internal.inject.BeanParamValueFactoryProvider.BeanParamValueFactory#provide (snip of that method):
        @Override
        public Object provide() {

            final Class<?> rawType = parameter.getRawType();

            final Object fromHk2 = locator.getService(rawType);
            if (fromHk2 != null) { // the bean parameter type is already bound in HK2, let's just take it from there
                return fromHk2;
            }
            ActiveDescriptor<?> reifiedDescriptor = descriptorCache.compute(rawType);
            return locator.getServiceHandle(reifiedDescriptor).getService();
        }

Using Guice the locator is the Guice implementation of org.glassfish.hk2.api.ServiceLocator ,  com.squarespace.jersey2.guice.GuiceServiceLocator, which asks Guice first to provide objects and causes this method to return the fromHk2 object, which is a new DemoParams with nothing else done to it.
Using HK2 the object is returned from the last line of that method which does some more complicated stuff to create DemoParams and set the fields on it. Guice doesn't know about these extra steps.
Updating DemoParams like below at least sets the two strings foo and bar to empty "" but I don't know if that's actually getting closer or not. If I have more time later I'll take another stab at it.
public class DemoParams {

    @Inject
    public DemoParams(@QueryParam("foo") String foo, @QueryParam("bar") String bar) {
        this.foo = foo;
        this.bar = bar;
    }

    private String foo;
    private String bar;
    //omitted getter/setter
}

This issue is observed when using @FormParam with @BeanParam as well , seems this is related to HK2/Jersey issue, please refer - https://java.net/jira/browse/JERSEY-3119 . Is there a ETA for the next release of DropWizard with Jersey 2.23.2 & HK2 2.5.0-b06 , which claimed to have the fix?

FYI. Just tested with jersey 2.25
@QueryParam annotation works fine, however @BeanParam is still returning "empty" bean, and the flow is the same as described by @heldeen  above.

I tested with HK2 version 2.5.0-b06 and it seemed to resolve the issue. So until
       <dependency>             <groupId>org.glassfish.hk2</groupId>             <artifactId>guice-bridge</artifactId>             <version>2.5.0-b06</version>             <exclusions>                 <exclusion>                     <groupId>com.google.inject</groupId>                     <artifactId>guice</artifactId>                 </exclusion>             </exclusions>         </dependency>         <dependency>             <groupId>ru.vyarus</groupId>             <artifactId>dropwizard-guicey</artifactId>             <version>4.0.1</version>             <exclusions>                 <exclusion>                     <groupId>org.glassfish.hk2</groupId>                     <artifactId>guice-bridge</artifactId>                 </exclusion>             </exclusions>         </dependency>

You can try to downgrade hk2 (as my comment in https://github.com/HubSpot/dropwizard-guicier/issues/13 suggests). When I'm forcing the version with:
´

org.glassfish.hk2
hk2-locator
2.4.0-b33

org.glassfish.hk2
hk2-api
2.4.0-b33

´
it works.

As downgrading hk2 caused us some other issues, I investigated https://github.com/xvik/dropwizard-guicey and it seems to work better for this use case. So looks like we'll switch to that project for now :)
Before I switched I discovered that https://github.com/Squarespace/jersey2-guice/blob/master/jersey2-guice-impl/src/main/java/com/squarespace/jersey2/guice/GuiceJustInTimeResolver.java is quite different from https://github.com/javaee/hk2/blob/master/guice-bridge/src/main/java/org/jvnet/hk2/guice/bridge/internal/GuiceToHk2JITResolver.java
In that it tries:
try {
return guiceInjector.getBinding(key);
} catch (ConfigurationException ce) {
return null;
}
and catches exceptions in order to try creating instances by hk2 instead of with guice.


PR: Implement CSP nonce handling like in css-in-js library

I have implemented a client side nonce support that was requested in this issue #2363 . I did not use the approach that was suggested in the issue, but rather I have implemented a css-in-js library approach.
Basically, when there is a csp meta tag in the head tag of the document like this:
<meta property="csp-nonce" content="some nonce" />

this nonce gets added to the style tag of styled-components library.
Basically, I have recreated this approach on https://cssinjs.org/csp/?v=v10.5.1
It would be nice if you could merge this feature into the version v5 of your library and possibly also in the future version of your library.
BR
Andrija Plavsa

This would be a great addition for clientside-rendered apps! 🎉
I shimmed your work into a sandbox to test it out, and I wasn't able to get it to work with textContent; using content works fine though 😄
-      return cspNonceMetaTag && cspNonceMetaTag.textContent;
+      return cspNonceMetaTag && cspNonceMetaTag.content;

Heading will be red if the nonce is working:
https://codesandbox.io/s/shim-styled-components-nonce-u3c70?file=/src/App.js

Yes, you are right. Actually, I used .content in my version of library which I use but when I tried to do a flow check, it was complaining about .content property so I've set it up to .textContent. I will fix it by ignoring the flow rule I have problem with and that should do the trick. But thanks for pointing this out to me 😉

I have committed all the latest changes and it should work now. 🚀

@aplavsa How do I access the correct version with the committed changes? The current version 5.2.1, which I have, does not have it.

You can't until they merge it with the v5 branch and do a new release as a new version. Until then, you can clone my branch from this pull request and build it on your own.

Please, this patch would make a big difference for non-webpack users.
The current solution __webpack_nonce__ is webpack only.

I have merged the latest legacy-v5 branch into the PR branch. Can you now try to merge into the upstream project?

See: https://github.com/styled-components/styled-components/issues/2363#issuecomment-895464410


Display time since last commit

Follow up on https://github.com/madjar/howoldis/pull/15
We should probably color the channel freshes based on relative time to the last commit.

Depends on #18


ImageSourceConverter not usable as MarkupExtension ?

Hi @charri
Maybe I used it wrong but to my understanding the FontAwesome.WPF.Converters.ImageSourceConverter which inherits from MarkupExtension cannot be used as such since its ProvideValue Function returns a this refrence.
Would it be possible to adapt it a little bit so it would be usable as a MarkupExtension ?
Right now I use this as a MarkupExtension :
`
public class ImageSourceFromFont : MarkupExtension
{
private FontAwesomeIcon _icon;
private Brush _brush = new SolidColorBrush(Colors.Black);
    public FontAwesomeIcon Icon
    {
        get { return _icon; }
        set { _icon = value; }
    }

    public Brush IconBrush
    {
        get { return _brush; }
        set { _brush = value; }
    }

    public override object ProvideValue(IServiceProvider serviceProvider)
    {
        return ImageAwesome.CreateImageSource(Icon, IconBrush);
    }

`

That is strange, I based the implementation of the ImageSourceConverter on this: http://stackoverflow.com/questions/7445119/improved-ivalueconverter-markupextension-or-dependencyobject
And I do see the brush change if I pass it as a parameter :/
We'll have a look over and try to give feedback by the end of the week.

Ok well I guess its used in a different way then I expected.
Like this you can use the Converter without declaring it as a Resource somewhere.
What I though it would be used like was this:
Icon="{MarkupExtensions:ImageSourceFromFont FontIcon={StaticResource FI_Document} }"
So that you can set a Property which is an ImageSource with it directly (since there is no Binding)
Maybe you could add such a MarkupExtension ?


Make it work where is just upper proxy that allows just tcp connections to 443

Found this similar issue.
#174
Looking at code and hacked to make it work:
For fetching initial certificate libevent evdns is used that works just with udp.
Hacked with this forgotten pull to make it work with tcp.
https://github.com/libevent/libevent/pull/99
But it doesn't work with all servers? Used cisco resolver that works.
Used tcp mode that udp response is truncated. Then tcp requests are performed.

Hi Sandro,
dnscrypt-wrapper doesn't send certificates over TCP yet, so this is not going to work with most resolvers.
But sending regular DNS queries to port 53 doesn't work for you?

Enviroment with just upper proxy with no other traffic allowed. Will look also at https://github.com/Cofyc/dnscrypt-wrapper
https://github.com/Cofyc/dnscrypt-wrapper/issues/72

https://github.com/Cofyc/dnscrypt-wrapper/pull/73

@Cofyc  @jedisct1
Protocol used for libevent dns is argument to public functions
https://github.com/SuppSandroB/dnscrypt-proxy/commit/76ede30cfe223e2079f06ce6fcb273bdfdac1001
Still some hardcoded values in src/libevent-modified/evdns.c  :
evdns_getaddrinfo
nameserver_prod_callback

I think this is useful if some ISPs is making DNS hijacking over UDP connections. See these comments:
https://v2ex.com/t/264619#reply32
Let me translate:
移动是不是所有 UDP 协议都屏蔽或劫持？
Is it (China) Mobile blocking or hijacking the whole UDP protocols?
上海移动 2G ， 4G ，想问很久了。
劫持 UDP 是为了劫持 DNS 吧。但是 ss （Android版）的 UDP 转发也无法使用， ikev2, anyconnect 之类如果设置成 UDP 连接的话根本就连不上。电信和联通都是没问题的。
移动这是对 UDP 协议无脑劫持 /屏蔽了吗？
Shanghai Mobile 2G, 4G, (I) want ask for a long time.
UDP hijacking may is intend to DNS hijacking. But SS (Shadowsocks) (Android version) also cannot use the UDP forwarding, ikev2, anyconnect cannot connect at all if setting UDP connecting. Both China Telecom and China Unicom have no problem.
Is it (China) Mobile blocking or hijacking the whole UDP protocols?

@Cofyc @jedisct1
I integrate changed dnscrypt-proxy into new version of Drony (1.3.102)
so it can be used on non rooted android devices.
https://github.com/SuppSandroB/dnscrypt-proxy/tree/android_jni
It is used as external process, not over jni as intent to do at beginning.
When tcp-only is used, it tries to fetch server certificate first over tcp, if it fails, it tries also over udp.
There is some simple gui to select resolver or create custom one.
Debug messages are shown in device log.

hi 	SuppSandroB. this is a known issue for years. So there exist the outdated real TCP-ONLY fork called gfw (for china users)
i hope the tcp hack for TCP-ONLY Parameter can be ready to come in next version :)
i see you use it on android, nice. i would love to test that in future. But you may have windows compiled binary too? may i can check the tcp certificate checks :) to speed this issue somewhat up.

Sorry no windows binary was build but you can build it from
https://github.com/SuppSandroB/dnscrypt-proxy/tree/android_jni
Seems to me that you miss some facts.
Drony uses binary that uses tcp requests for certificate checks.
https://github.com/SuppSandroB/dnscrypt-proxy/commit/76ede30cfe223e2079f06ce6fcb273bdfdac1001
Problem is that at the time dnscrypt-wrapper also needed some changes to support it.
I change that but not know if it hits some public release.
https://github.com/cofyc/dnscrypt-wrapper/pull/73
Find out that cisco servers support this already so first choice in drony is cisco dns server :)

This makes also original to work with getting cert over tcp?
https://github.com/jedisct1/dnscrypt-proxy/commit/678dfb59fb79e773e822885629f864cdb959991d

@SuppSandroB  yes, the gfw branch is obsolete now


add naive implementation for several new tokens in graphql lang

Hey Prism team, I'd love to get your feedback on this set of new tokens for GraphQL and see if we can't get it to be worthy to merge upstream - I will likely be using this implementation for a relatively big project at work coming soon :) I've tried to add some more "integration" tests to cover the extra tokens that I need and hopefully this helps others along the way [and I think it fixes a couple bugs as well].
Here are the highlights:

Adding these extra tokens for language-graphql enables folks to apply more visual language to GraphQL code samples.

I have tried to add aliases to the more generic/older/previous implementation tokens as appropriate. This way you as a dev have choices to style more parts of the GraphQL code being presented.
The names of the tokens are roughly chosen based on the official graphql documentation / what seemed to make sense.

Fixed [or at least added a test for] the handling of the { order(id: 4) { id, name, product } } GQL query shorthand so it is not all rendered as plain with punctuation.
Added a --language flag for patterns tests to isolate one language at a time in development

I'd be happy to live pair on this if this is something that's interesting to you! :)

Added a lookahead feature to prism-core that allows you to confirm a token by what is on the right of it.

Can't this be done with regex alone?

Added a lookahead feature to prism-core that allows you to confirm a token by what is on the right of it.

Can't this be done with regex alone?

@joshgoebel yes, but because of the way matches are used in prism-core [as far as I understand], I wasn't able to get it to work without changing the underlying logic in matchPattern. see: https://github.com/PrismJS/prism/blob/f3dd72c15fb1e58cdbf2f4a5c2c885c3a3e85057/components/prism-core.js#L967-L975

And it calls pattern.exec to run the regex again the text, not sure what am I missing...? What was the exact issue you were having with a simple regex look-ahead?

And it calls pattern.exec to run the regex again the text, not sure what am I missing...? What was the exact issue you were having with a simple regex look-ahead?

I needed access to the part of the match that didn't include the punctuation being used for checking what kind of token it is... which is kinda brittle. But for these tokens I needed the element without the punctuation, and that was always in match[1].

Could please explain the variable-input, atom-input, and property-mutation tokens in more detail?

Good question @RunDevelopment -- these tokens are for visually showing the relationships between the inputs to a GraphQL mutation specifically. My team wants to have a specific theme that visually relates the variable-input and the atom-input, and we have other visualizations that will match the scheme we use here.
property-mutation is just to say that this mutation is one of the properties available in the global Mutation object of your GraphQL server. So having access to style it is just to denote that.
They are specific to the mutation keyword, hence the mutation.* but I am definitely open to better solutions. Here's a sneak peek of what we're going for:

Here's a sneak peek (WIP) of what we're going for:

That does look really good but I don't think that this is possible with regexes alone. Especially the tracking of the input-variable.
That being said, Prism has hooks for this reason! We can use the after-tokenize hook to modify the GraphQL token stream however we wish.
My idea is to remove the specialized variable-input and tokenized with the "normal" variable token instead. We then have a after-tokenize hook that goes through the token stream to detect the list of input variables and then gives a special alias to all of them.
The same idea can also be applied to atom-input and property-mutation. This would get rid of all these scary .*s and we won't be constraint by what regexes can and can't do.
Do you want me to write a little after-tokenize hook?

That does look really good

Thanks! 🙌🏽

Do you want me to write a little after-tokenize hook?

Go for it, yeah! Thanks for helping me get up to speed w/ all the lifecycle methods Prism has :)

Sorry for the weird unverified commit, but, I added another "integration" test for ya :)

@RunDevelopment do you think this is mergeable without the after-tokenize hook?


Can't navigate to modal screen from ActionSheet

Description
From an ActionSheet, I expected to be able to close the ActionSheet and navigate to a modal screen when a button is clicked.
CodeSandbox/Snack link
No response
Steps to reproduce

Go to '...'
Click on '...'
Scroll down to '...'
See error

gluestack-ui Version
1.1.8
Platform

[X] Expo
[ ] React Native CLI
[ ] Next
[ ] Web
[ ] Android
[ ] iOS

Other Platform
No response
Additional Information
I'm using Expo Router and I have a screen that is defined as a modal screen.
I have another screen with an ActionSheet, and in the ActionSheet there is a button that close the ActionSheet and navigates to the modal screen when clicked.

If I call handleClose(), the ActionSheet is closed but the page doesn't navigate to the modal screen.
If I dont't call handleClose(), the ActionSheet is not closed but the page navigates to the modal screen.
If the modal screen is defined as a normal screen (without { presentation: "modal" }), and I call handleClose(), then the ActionSheet is closed and the page navigates to the screen.

This is the _layout.tsx file:
import { Stack } from "expo-router";

export default function Layout() {
  return (
    <Stack
      screenOptions={{
        headerShown: false,
      }}
    >
      <Stack.Screen name="index" />
      <Stack.Screen name="create" options={{ presentation: "modal" }} />
    </Stack>
  );
}

This is the index.tsx file:
import { useState } from "react";
import { router } from "expo-router";
import {
  Actionsheet,
  ActionsheetBackdrop,
  ActionsheetContent,
  ActionsheetDragIndicator,
  ActionsheetDragIndicatorWrapper,
  Button,
  ButtonIcon,
  ButtonText,
  Text,
  VStack,
  View,
} from "@gluestack-ui/themed";

export default function Index() {
  const [showActionsheet, setShowActionsheet] = useState(false);

  const handleClose = () => {
    setShowActionsheet(false);
  };

  return (
    <View>
      <Button onPress={() => setShowActionsheet(true)}>
        <ButtonIcon as={PlusIcon} />
      </Button>
      <Actionsheet isOpen={showActionsheet} onClose={handleClose} useRNModal>
        <ActionsheetBackdrop />
        <ActionsheetContent maxHeight="75%">
          <ActionsheetDragIndicatorWrapper>
            <ActionsheetDragIndicator />
          </ActionsheetDragIndicatorWrapper>
          <VStack>
            <Button onPress={() => {
              router.navigate("/create");
              handleClose(); // <-- with this it won't navigate
            }}>
              <ButtonText>Create</ButtonText>
            </Button>
          </VStack>
        </ActionsheetContent>
      </Actionsheet>
    </View>
  );
}

Hi @jezzdk , I hope I understood correctly, does this happen also if you remove 'useRNModal' from actionsheet??
I think, but not sure, I have a similar issue.
In my case I had to keep 'useRNModal' because I want to present it on top of some 'modal screens', in this case for now I'm setting a timeout(0.5s) to navigate to the modal screen after closing actionsheet, if the actionsheet is not fully closed somehow in my case the modal screen is not appearing.
I don't like timeout solution but it is working for now.
This started to happen in my project when I switched to expo ask 50, with 49 it was working.

@jezzdk Thanks for reporting this. We'll have a look.


Postgres dialect failing when processing a numeric column

When my dao processing a numeric column i get the following error:
type 'String' is not a subtype of type 'List' in type cast
#0      PostgresBinaryDecoder.convert (package:postgres/src/binary_codec.dart:492:38)
#1      Codec.decode (dart:convert/codec.dart:30:34)
#2      _PgResultStreamSubscription.handleMessage (package:postgres/src/v3/connection.dart:509:34)
#3      PgConnectionImplementation._handleMessage (package:postgres/src/v3/connection.dart:328:25)
#4      _RootZone.runUnaryGuarded (dart:async/zone.dart:1594:10)
#5      _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:339:11)
#6      _DelayedData.perform (dart:async/stream_impl.dart:515:14)
#7      _PendingEvents.handleNext (dart:async/stream_impl.dart:620:11)
#8      _PendingEvents.schedule. (dart:async/stream_impl.dart:591:7)
#9      _microtaskLoop (dart:async/schedule_microtask.dart:40:21)
#10     _startMicrotaskLoop (dart:async/schedule_microtask.dart:49:5)
I have two dialects a sqlite dialect and a postgres dialect as I am trying to read from both a postgres database and a sqlite version of the same database. The error occurs when the column is of type numeric.
My drift tables look as follows:
CREATE TABLE [bar_code_sell_price] (
	bar_code_sell_price_id INTEGER PRIMARY KEY,
	bar_code_id INTEGER NOT NULL,
	bar_code_sell_price_eff_start_date DATETIME NOT NULL,
	bar_code_sell_price_eff_end_date DATETIME NOT NULL DEFAULT '2099-12-31',
	bar_code_sell_price REAL NOT NULL,
	created_by TEXT NOT NULL DEFAULT 'current_user',
	created_on INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),
	updated_by TEXT NOT NULL DEFAULT 'current_user',
	updated_on INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),
);

The table that gives the error is the barcode_sell_price column.
I have also tried
-- bar_code_sell_price.drift

CREATE TABLE [bar_code_sell_price] (
	bar_code_sell_price_id INTEGER PRIMARY KEY,
	bar_code_id INTEGER NOT NULL,
	bar_code_sell_price_eff_start_date DATETIME NOT NULL,
	bar_code_sell_price_eff_end_date DATETIME NOT NULL DEFAULT '2099-12-31',
	bar_code_sell_price numeric(14,4) NOT NULL,
	created_by TEXT NOT NULL DEFAULT 'current_user',
	created_on INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),
	updated_by TEXT NOT NULL DEFAULT 'current_user',
	updated_on INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),
);

-- bar_code_sell_price.drift

CREATE TABLE [bar_code_sell_price] (
	bar_code_sell_price_id INTEGER PRIMARY KEY,
	bar_code_id INTEGER NOT NULL,
	bar_code_sell_price_eff_start_date DATETIME NOT NULL,
	bar_code_sell_price_eff_end_date DATETIME NOT NULL DEFAULT '2099-12-31',
	bar_code_sell_price REAL NOT NULL,
	created_by TEXT NOT NULL DEFAULT 'current_user',
	created_on INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),
	updated_by TEXT NOT NULL DEFAULT 'current_user',
	updated_on INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),
);

Not really sure how the cast gets set but to me it shouldnt be getting passed in as a List.

Could you report the exact postgres version from your pubspec.lock? I probably need it to match the stack traces.
Also, do you happen to know the query that caused it? A SELECT * FROM bar_code_sell_price?

  postgres:
    dependency: transitive
    description:
      name: postgres
      sha256: "98457afc06dd3f9d6892c178ea03ca9659e454107c9be90111e607691998d70d"
      url: "https://pub.dev"
    source: hosted
    version: "2.6.2"

the exact query that caused it is:
SELECT * FROM \"sku_bar_code_lookup_view\" WHERE \"bar_code\" = $1 LIMIT 1;
Thats the view created from the table.

To help out and use the table i provided. i created a dao to lookup the barcode this was the query generated
flutter: Drift: Sent SELECT * FROM  "bar_code_sell_price" WHERE "bar_code_id" = $1 LIMIT 1; with args [677374]
the same error occurs:
 #0      PostgresBinaryDecoder.convert (package:postgres/src/binary_codec.dart:492:38)
flutter: #1      Codec.decode (dart:convert/codec.dart:30:34)
flutter: #2      _PgResultStreamSubscription.handleMessage (package:postgres/src/v3/connection.dart:509:34)
flutter: #3      PgConnectionImplementation._handleMessage (package:postgres/src/v3/connection.dart:328:25)
flutter: #4      _RootZone.runUnaryGuarded (dart:async/zone.dart:1594:10)
flutter: #5      _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:339:11)
flutter: #6      _DelayedData.perform (dart:async/stream_impl.dart:515:14)
flutter: #7      _PendingEvents.handleNext (dart:async/stream_impl.dart:620:11)
flutter: #8      _PendingEvents.schedule.<anonymous closure> (dart:async/stream_impl.dart:591:7)
flutter: #9      _microtaskLoop (dart:async/schedule_microtask.dart:40:21)
flutter: #10     _startMicrotaskLoop (dart:async/schedule_microtask.dart:49:5)

I couldn't even create the table you have in the drift file:

PostgreSQLSeverity.error 22P02: invalid input syntax for type bigint: "2099-12-31"

The problem is that drift doesn't use the datetime type from postgres, we'd store them as timestamps and declare the column as bigint. Did you create the table manually outside of drift?
The stack trace seems to point toward us trying to read a postgres NUMERIC column which is not currently supported. I wonder why we're getting those rows though, is there really a REAL column in the table?

The table was created inside drift worked fine. We can remove the datetime columns it will be fine the important column is the NUMERIC column. I managed to get it to work by changing code in the postgres-dart package specifiically changing the numeric datatype to convert to a double instead of a List to solve the error.

Using this table:
CREATE TABLE [bar_code_sell_price] (
	bar_code_sell_price_id INTEGER PRIMARY KEY,
	bar_code_sell_price REAL NOT NULL
);

Works for me when using it like this:
final database = MyDatabase(postgres);

await database.barCodeSellPrice.insertOne(BarCodeSellPriceCompanion.insert(
    barCodeSellPriceId: Value(1), barCodeSellPrice: 123.45));

print(await database.select(database.barCodeSellPrice).get());

I'll fix the numeric decoding bug in postgres, but that won't mean that drift will support the numeric type in postgres. Maybe we should look into supporting custom types for specific databases though.

@simolus3 relating to this line of code drift-2.11.1/lib/src/runtime/types/mapping.dart:194:
      case DriftSqlType.double:
        return (sqlValue as num?)?.toDouble() as T;

so what doesnt make sense to me is for numeric columns we will always return a String and therefore this line of code will error out.

The regular types for this (PgDataType.real, PgDataType.double and the integer types) would work with the as num. So if you define a table with those types instead of NUMERIC(...), this should work.
Only PgDataType.numeric returns a string. Arguably we should never report these as doubles since the type is meant to store numbers with exact precision. We should probably support NUMERIC as a custom type somehow, but at the moment we don't support that type.

Hi,
I defined a column in PostgreSQL like this (drift file):
amount NUMERIC(16, 2) NOT NULL
(PostgreSQL 16.2 (Postgres.app) on aarch64-apple-darwin21.6.0)
I need the numeric type but a select returns a value
string as you wrote above.
To work I modified your mapping.dart file like this:
DriftSqlType.double => switch (sqlValue) {
          BigInt() => sqlValue.toDouble(),
          String() => double.parse(sqlValue),           // ADDED THIS LINE
          _ => (sqlValue as num).toDouble(),
        },

Or is there a better way?
Thanks

HI,
I defined a column in postgresql like this (I need numeric type):
amount numeric(16, 2) NULL
(PostgreSQL 16.2 (Postgres.app) on aarch64-apple-darwin21.6.0)
Since the select returns me a string, I modified your mapping.dart file like this:
      DriftSqlType.double => switch (sqlValue) {
          BigInt() => sqlValue.toDouble(),
          String() => double.parse(sqlValue),       // ADDED THIS
          _ => (sqlValue as num).toDouble(),
        },

I tried the money type but it's not supported, it returns a UndecodedBytes...
Or is there a better way?
Thanks

Hi,
I need a numeric column with exact precision with PostgreSQL: so I'm using your CustomSqlType with Money type of money2 package:
class MoneyType implements CustomSqlType<Money> {
  const MoneyType();

  @override
  String mapToSqlLiteral(Money dartValue) => dartValue.amount.format('S ###.###,00');

  @override
  Object mapToSqlParameter(Money dartValue) => dartValue;

  @override
  Money read(Object fromSql) => Money.fromDecimal(Decimal.parse(fromSql as String), isoCode: 'EUR', decimalDigits: 2);

  @override
  String sqlTypeName(GenerationContext context) => 'money';
}

And in drift file :
CREATE TABLE
  order_line (
    id INT NOT NULL PRIMARY KEY,
    amount `const MoneyType()` NOT NULL,
.....

And ... it works: convert from numeric (PostgreSQL) to string (drift) to money (my code) and reverse.
So, it's correct? Or is there a better way?
THANKS

Generally this is the correct way to go about this, yes. I just think mapToSqlParameter is broken because the postgres package does not support the Money type - so mapping variables from Dart to SQL in prepared statements would likely not work. I don't think there's a way to reliably fix that without updating the postgres client though.

Thanks, I'll do some more tests and then write again if necessary🙂

Thanks, I'll do some more tests and then write again if necessary🙂


Disable remote fonts in html documentation

Remote fonts are considered a privacy breach by lintian, so it's best to disable them IMO.
newsboat_2.19-1_amd64.deb

    W privacy-breach-generic usr/share/doc/newsboat/faq.html [<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=open+sans:300,300italic,400,400italic,600,600italic%7cnoto+serif:400,400italic,700,700italic%7cdroid+sans+mono:400,700">] (https://fonts.googleapis.com/css?family=open+sans:300,300italic,400,400italic,600,600italic%7cnoto+serif:400,400italic,700,700italic%7cdroid+sans+mono:400,700)
    W privacy-breach-generic usr/share/doc/newsboat/newsboat.html [<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=open+sans:300,300italic,400,400italic,600,600italic%7cnoto+serif:400,400italic,700,700italic%7cdroid+sans+mono:400,700">] (https://fonts.googleapis.com/css?family=open+sans:300,300italic,400,400italic,600,600italic%7cnoto+serif:400,400italic,700,700italic%7cdroid+sans+mono:400,700)

Coverage decreased (-0.005%) to 56.329% when pulling defb8c69611fe0028a629e2a80c522322e9fa671 on tsipinakis:no-webfonts into f9da3abe4d693ec7cc22c9e04ecd1d749514445d on newsboat:master.

I agree. Thanks!
I looked through the rest of doc/xhtml/newsboat.html and it looks like there are no other embeds: no remote styles, no remote scripts, no embedded JS. So we should be fine now.


Wrong version of Visual Studio Build Tools 2017 detected

Brief description of your issue
Visual Studio Installer shows that I have Visual Studio Build Tools 2017 version 15.9.51 installed. Running winget upgrade shows the installed version as 15.8.9, therefore, needing an update. Running winget upgrade --all attempts to install an update, but winget upgrade continues to report this app as outdated.
Steps to reproduce

Install Visual Studio Installer.
Install Visual Studio Build Tools 20017.
Confirm the version is 15.9.51.
Open the Terminal.
Run winget upgrade

Expected behavior
Winget should know the app's actual version and that no update is required.
Actual behavior
I'm stuck in an update loop that has persisted for a couple of months, perhaps.
Environment
Windows Package Manager v1.3.2691
Copyright (c) Microsoft Corporation. All rights reserved.

Windows: Windows.Desktop v10.0.22623.1245
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.18.2691.0

------------------------------------------------------------

Edition	        Windows 11 Pro
Version	        22H2
Installed on    8/24/2022
OS build	22623.1245
Experience	Windows Feature Experience Pack 1000.22638.1000.0

------------------------------------------------------------

PSVersion                      7.3.2
PSEdition                      Core
GitCommitId                    7.3.2
OS                             Microsoft Windows 10.0.22623
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

This is also in progress:

https://github.com/microsoft/winget-pkgs/issues/94161

Ooops, this shouldn't be closed as I've checked the issue still persists.
~ winget list Microsoft.VisualStudio.2017.BuildTools
Name                           Id                                     Version  Available Source
-----------------------------------------------------------------------------------------------
Visual Studio Build Tools 2017 Microsoft.VisualStudio.2017.BuildTools < 15.8.9 15.9.51   winget

Turns out the fix was the other way round. The DisplayVersion should be removed from 15.8.9's manifest as DisplayVersion is actually equal to PackageVersion.

@mcdonaldjc Can you confirm if the issue is resolved for you?

Hello! I can confirm that the issue is no longer present on my system. I had updates for Postman, AWS CLI, and Node.js. Nothing in here about Visual Studio Build Tools.
Thanks to everyone for your swift attention!


Strange fonts on try.jupyter.org

This is an example from the Welcome R - demo.ipynb notebook.

Hmmmm, that must have come from either our recent addition of apt-get clean or the build of R packages /cc @asmeurer

Quoting man apt-get
  clean
      clean clears out the local repository of retrieved package files.
      It removes everything but the lock file from
      /var/cache/apt/archives/ and /var/cache/apt/archives/partial/.

As it only removes cached package files (from /var/cache/apt/archives), this should not be an issue.

What browser are you using? There are apparently some issues with the R kernel plots and Firefox.

I'm using Google Chrome. Here's more info

It renders correctly for me in Version 43.0.2357.52 beta (64-bit) (OS X 10.10.4).

I tried Firefox, but it wouldn't even let me go to try.jupyter.org ("This connection is untrusted").

I got even strange results with firefox 35.0.1 (in a ubuntu 14.04 VM).

The fonts are barely visible.

From the same VM, chromium 41.0.2272.76 (Developer Build) renders it well.

So this is likely an upstream problem with IRkernel/IRdisplay. I think they are using svg, which has issues with some browsers.

Closing this, as it's a browser specific issue.

Can you try tmpnb.org @asmeurer (same system, different certs)?

I see now. I didn't realize this was coming from the example notebook. For me, it works if I only execute the cell with the plot, but if I execute the earlier cells first, I get the same result as @sumitsahrawat (even in Chrome).


Support for multiple buttons to same input

For instance, I would like to have 'Down' bound to down on my lever, the A button on my stick and the L2 button on my stick (3 ways total to press down). Trying to do this through the web-config results in an error. This wouldn't be a permanent configuration for my stick though, as I'd like to change input layout for different games (ruling out hardwiring buttons to same inputs).
I guess by extension it'd be cool to have a save/load config option in the web-config for easy switching between layouts.

Hey @Hoopyy ,
Thanks for the feedback.
Can I compile something and send it over for testing to see if it behaves as expected and then we can look into the limitations for the config file.
Save / load is currently out of scope.

Yeah, I'd be happy to test.

I've been testing out a few things on this but when defining in the BoardConfig.h you can only specify each input once.  So even if you put multiple down it will only take the last one.
Since this is a limitation to the code it is not something changing web-config would fix.
For this I think your best bet would be some custom hardware that can allow for multiple buttons to be mapped to the same pin.  I have this done on my Retro Pocket Pad via a switch that you can do in real time.
If you want to give me a more broad breakdown of all the changes you might want to make I can look into makeing you a custom board for it.
For now though we will consider this out-of-scope with no plans to do until we decicde to really start cutting up MPG and breaking some of the limitations on its current implementation.

Alright no problem. Biggest reason for wanting this functionality was due to the Steam controller configuration adding unnecessary input delay (I believe its 1ms, very minor, but its extra delay none-the-less). I've found other programs that serve the same purpose with no delay, so I can use those. No need to bother yourself creating a custom board just for my use case.
Thanks for looking into this issue

At a minimum I’d like to take a look at MPG, think about what it would take
for a minimum viable product implementation, and add the notes here. Please
assign to me so I don’t lose track of this.
On Sat, Oct 1, 2022 at 1:18 PM Hoopyy @.***> wrote:

Alright no problem. Biggest reason for wanting this functionality was due
to the Steam controller configuration adding unnecessary input delay (I
believe its 1ms, very minor, but its extra delay none-the-less). I've found
other programs that serve the same purpose with no delay, so I can use
those. No need to bother yourself creating a custom board just for my use
case.
Thanks for looking into this issue
—
Reply to this email directly, view it on GitHub
https://github.com/OpenStickFoundation/GP2040-CE/issues/104#issuecomment-1264444520,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A2SAR5PUT7NFZR5DZSCMAALWBB575ANCNFSM6AAAAAAQY2XNIM
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Assigned to you @nullczek


HDR compatibility

Hello!
On my HDR monitor when HDR feature are switched on, application window is  very dark. Its very uncomfortable to work with that.
Its much lighter on a screenshot than IRL

I am merging this to https://github.com/microsoft/vscode/issues/88491 , please follow the workaround mentioned there. Thanks!


Support exposing current metric value on server check command

Current behaviour
Currently when we execute the nats server check command, the client expects a set of threshold flags as inputs to be able to answer if the server is healthy or not according to the provided thresholds.
Feature request
It would be useful to know get current metric values, instead of just knowing if the threshold was exceeded or not.
This would enable us to create a prometheus exporter component that could export prometheus metrics on all of the nats server check set of commands. We would use these metrics on alerts and define the needed thresholds on the alerts themselves.
Desired behaviour

Optional threshold flags, because those thresholds could be set on the alerts.
New metrics on prometheus format to show the current health state.

Example
Currently
nats server check stream --server nats://nats:4222 \
  --stream TEST \
  --peer-expect 1 \
  --lag-critical 100 \
  --msgs-warn 4000 \
  --msgs-critical 3000 \
  --min-sources 33 \
  --max-sources 34 \
  --peer-lag-critical 100 \
  --peer-seen-critical 5m \
  --format prometheus

Example output:
# HELP nats_server_check_stream_peer_lagged RAFT peers that are lagged more than configured threshold
# TYPE nats_server_check_stream_peer_lagged gauge
nats_server_check_stream_peer_lagged{item="TEST"} 0
...

Proposed
nats server check stream --server nats://nats:4222 \
  --stream TEST \
  --format prometheus

In the previous example it would export a metric saying if a given peer has lag according to the provided threshold flag --peer-lag-critical 100.
In this example, it would just export the peer lag itself for each peer <> stream.
This strategy could be applied for every other type of metric currently available on the tool.
Example output:
# HELP nats_server_check_stream_peer_lag RAFT peer lag
# TYPE nats_server_check_stream_peer_lag gauge
nats_server_check_stream_peer_lag{item="TEST", peer="nats-2"} 200
...

Thanks :pray:

We now support marking up streams individually with the configuration checks need
$ nats s info SFO_MIRROR
...
Metadata:

        io.nats.monitor.lag-critical: 100
       io.nats.monitor.msgs-critical: 9000
           io.nats.monitor.msgs-warn: 10000
         io.nats.monitor.peer-expect: 3
   io.nats.monitor.peer-lag-critical: 100
  io.nats.monitor.peer-seen-critical: 5m

With these in place the CLI will now configure itself from those:
$ nats server check stream --stream SFO_MIRROR --format text
SFO_MIRROR: OK

Status Detail

╭────────┬──────────────────────╮
│ Status │ Message              │
├────────┼──────────────────────┤
│ OK     │ 3 peers              │
│ OK     │ replicas are current │
│ OK     │ replicas are active  │
│ OK     │ 11927 messages       │
│ OK     │ 0 sources            │
│ OK     │ 0 sources current    │
│ OK     │ 0 sources active     │
│ OK     │ Mirror SFO           │
╰────────┴──────────────────────╯

Check Metrics

╭──────────────────┬────────┬──────┬────────────────────┬───────────────────┬──────────────────────────────────────────────────────────────────────╮
│ Metric           │ Value  │ Unit │ Critical Threshold │ Warning Threshold │ Description                                                          │
├──────────────────┼────────┼──────┼────────────────────┼───────────────────┼──────────────────────────────────────────────────────────────────────┤
│ messages         │ 11,927 │      │ 9,000              │ 10,000            │ Messages stored in the stream                                        │
│ sources          │ 0      │      │ 0                  │ 0                 │ Number of sources being consumed by this stream                      │
│ sources_lagged   │ 0      │      │ 0                  │ 0                 │ Number of sources that are behind more than the configured threshold │
│ sources_inactive │ 0      │      │ 0                  │ 0                 │ Number of sources that are inactive                                  │
│ lag              │ 0      │      │ 100                │ 0                 │ Number of operations this peer is behind its origin                  │
│ active           │ 0.020  │ s    │ 0                  │ 0                 │ Indicates if this peer is active and catching up if lagged           │
╰──────────────────┴────────┴──────┴────────────────────┴───────────────────┴──────────────────────────────────────────────────────────────────────╯

I could look at making the actual checks optional if really still needed but seems to me the purpose of these checks are to check.

Had a look and it should in theory be possible to make a gathering-only behaviour, I did a lot of refactoring of the checks and they do seem like its easier now.
I'm also adding a prometheus exporter where you can define these checks and they will get done on every poll if thats something of interest


Toggle DEBUG_TB_INTERCEPT_REDIRECTS from the toolbar

At the moment, the debug toolbar provides an interstitial page upon redirects by default. This can be configured on/off explicitly with the DEBUG_TB_INTERCEPT_REDIRECTS setting.
I'd find it really useful if this could be toggled directly from the toolbar on the page. :)

In general this isn't possible. Config cannot be changed after the application starts, because there's no way to ensure that change is propagated to other workers, depending on how the server is being used. The built-in Flask dev server uses threads, so it would work there, but it can also be configured for processes, and most other servers use processes.

Ah, interesting technical constraint, that's fair. I was definitely only thinking of the basic local dev case. It's obviously not the end of the world using the config option :)


Use export= for compatibility with commonjs

Instead of using a default export, please use the following definition instead:
import Client from './lib/client';
import Options from './lib/interfaces/Options';
declare class Mailgun {
    private formData;
    constructor(FormData: new (...args: any[]) => FormData);
    client(options: Options): Client;
}
export = Mailgun;

This would allow to use the typings in a commonjs setup. See the last part of https://www.typescriptlang.org/docs/handbook/declaration-files/templates/module-d-ts.html#default-exports for more details.

Any updates on this?

@gdieguez  Thank you for the explanation but I still have few questions.
What do you mean by saying common.js setup?
Is it just a simple TS application that uses this kind of import import Mailgun = require('mailgun.js'); or something else??
BTW I tried to update the code in the way you offered and it built successfully however it broke my small test TS application with regular AMD modules.
This is updated index.ts file:
import Client from './lib/client';
import Options from './lib/interfaces/Options';
import IFormData from './lib/interfaces/IFormData';

class Mailgun {
  private formData: new () => IFormData

  constructor(FormData: new (...args: any[]) => IFormData) {
    this.formData = FormData;
  }

  client(options: Options) : any {
    return new Client(options, this.formData);
  }
}

export = Mailgun;

This is what I have in the .d.ts file after the build:
import Options from './lib/interfaces/Options';
import IFormData from './lib/interfaces/IFormData';
declare class Mailgun {
    private formData;
    constructor(FormData: new (...args: any[]) => IFormData);
    client(options: Options): any;
}
export = Mailgun;

This is an import in my test app:
import formData from 'form-data';
import Mailgun from 'mailgun.js';

const mailgun = new Mailgun(formData);

This is an error that I have after I built and run the test App:
node build/index.js

/home/omaze/private-projects/mailgun-test-ts-app/build/index.js:44
var mailgun = new mailgun_js_1.default(form_data_1.default);
              ^

TypeError: mailgun_js_1.default is not a constructor
    at Object.<anonymous> (/home/omaze/private-projects/mailgun-test-ts-app/build/index.js:44:15)
    at Module._compile (internal/modules/cjs/loader.js:999:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
    at Module.load (internal/modules/cjs/loader.js:863:32)
    at Function.Module._load (internal/modules/cjs/loader.js:708:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:60:12)
    at internal/main/run_main_module.js:17:47

In addition to that this change breaks regular commonJS import const Mailgun = require('mailgun.js'); in node.js application with the similar error:
TypeError: Mailgun is not a constructor
    at Object.<anonymous> (/home/omaze/private-projects/mailgun-test-app/scripts/send-email.js:13:17)
    at Module._compile (internal/modules/cjs/loader.js:999:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
    at Module.load (internal/modules/cjs/loader.js:863:32)
    at Function.Module._load (internal/modules/cjs/loader.js:708:14)
    at Module.require (internal/modules/cjs/loader.js:887:19)
    at require (internal/modules/cjs/helpers.js:74:18)
    at /home/omaze/private-projects/mailgun-test-app/index.js:27:19

CommonJS imports are already broken for us as of v3.5.7 when type-checking pure JS files:
const formData = require('form-data');
const Mailgun = require('mailgun.js');
const mailgun = new Mailgun(formData);

fails with
error TS2351: This expression is not constructable.
  Type 'typeof import(".../node_modules/mailgun.js/dist/index")' has no construct signatures.

line: const mailgun = new Mailgun(formData);

If I manually edit .../node_modules/mailgun.js/dist/index.d.ts with our suggestion, it works fine:
import Options from './lib/interfaces/Options';
import IFormData from './lib/interfaces/IFormData';
declare class Mailgun {
    private formData;
    constructor(FormData: new (...args: any[]) => IFormData);
    client(options: Options): any;
}
export = Mailgun;

I think that maybe we hit a point where there's no backwards-compatible change that works for us, but I'm not 100% sure to be honest.

It works now! TYSM @olexandr-mazepa


Enhance Test Coverage for @yamada-ui/checkbox

related: #775
Description
Enhance test coverage for components with less than 80% coverage to meet or exceed 80%.
Problem Statement/Justification
Testing is essential to ensure quality when operating a package.

test coverage already exceed 80%.


Image upload to bucket should fail fast if the bucket does not exist in account

What happened:
I tried to upload a image to COS bucket, the bucket was not exist in that particular account,I saw below prompts after long time
[root@karthik-vm ~]# ./pvsadm image upload -b power-oss-bucket -f karthik-centos-8.ova.gz -r us-south
I0423 04:27:05.124794   41997 root.go:50] Using an API key from IBMCLOUD_API_KEY environment variable

I0423 04:50:27.717142   41997 upload.go:157] Bucket power-oss-bucket not found in the account provided
? Would You Like to use Available COS Instance for creating bucket? No
? Would you like to create new COS Instance? No
Error: Create Cloud Object Storage instance either offline or use the pvsadm command

I am expecting to show this prompt to user as a first step in image upload that is check if the bucket exist in account before proceeding to do anything.

What you expected to happen:
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:

pvsadm version (use pvsadm version):
Environment - On-Prem or IBM PowerVS:
OS (e.g: cat /etc/os-release):
Kernel (e.g. uname -a):
Others:

@Karthik-K-N  Thank you creating the issue, When tried to verify this scenario, observed that bucket exists check happens before prompting for cos instance creation and it takes less than 2 minutes. I think in your case time taken  23 mins is because of network issue.
(env) keerthanaarumugam@Keerthanas-MacBook-Pro pvsadm % ./bin/pvsadm image upload -b power-oss-bucket -f karthik-centos-8.ova.gz -r us-south -v 3
I0507 21:42:08.037860   51886 root.go:50] Using an API key from IBMCLOUD_API_KEY environment variable
I0507 21:42:13.881650   51886 s3client.go:85] Service ID: dccb66fa-2ce6-48b2-b517-373e5b278f91, region_id: global, Name: cos-image-sync-test-biqcka
I0507 21:42:13.881691   51886 s3client.go:86] crn: crn:v1:bluemix:public:cloud-object-storage:global:a/c265c8cefda241ca9c107adcbbacaa84:dccb66fa-2ce6-48b2-b517-373e5b278f91::
I0507 21:42:22.408028   51886 s3client.go:85] Service ID: 08fe8cc1-86c0-4a7b-a7f9-64a44a23b5a2, region_id: global, Name: multiarch-new-8l9n6-cos
I0507 21:42:22.408120   51886 s3client.go:86] crn: crn:v1:bluemix:public:cloud-object-storage:global:a/c265c8cefda241ca9c107adcbbacaa84:08fe8cc1-86c0-4a7b-a7f9-64a44a23b5a2::
I0507 21:42:25.918675   51886 s3client.go:85] Service ID: c64c899c-6a9b-4ade-8514-3d6dae318563, region_id: global, Name: ibm-pvs-33-coszz
I0507 21:42:25.918715   51886 s3client.go:86] crn: crn:v1:bluemix:public:cloud-object-storage:global:a/c265c8cefda241ca9c107adcbbacaa84:c64c899c-6a9b-4ade-8514-3d6dae318563::
I0507 21:42:28.972725   51886 s3client.go:85] Service ID: 3f76e4fc-46b1-4168-bf68-715b5689d04a, region_id: global, Name: kishen-centos
I0507 21:42:28.972813   51886 s3client.go:86] crn: crn:v1:bluemix:public:cloud-object-storage:global:a/c265c8cefda241ca9c107adcbbacaa84:3f76e4fc-46b1-4168-bf68-715b5689d04a::
I0507 21:42:31.826079   51886 s3client.go:85] Service ID: c2e6f56f-f292-4cf3-b5a4-6ff8ef5892dd, region_id: global, Name: dhar-hyp-iks-cos
I0507 21:42:31.826099   51886 s3client.go:86] crn: crn:v1:bluemix:public:cloud-object-storage:global:a/c265c8cefda241ca9c107adcbbacaa84:c2e6f56f-f292-4cf3-b5a4-6ff8ef5892dd::
I0507 21:42:35.310360   51886 s3client.go:85] Service ID: 8e636c2c-02c9-4d64-82ea-db1e02e91b8e, region_id: global, Name: mkumatag-cos
I0507 21:42:35.310446   51886 s3client.go:86] crn: crn:v1:bluemix:public:cloud-object-storage:global:a/c265c8cefda241ca9c107adcbbacaa84:8e636c2c-02c9-4d64-82ea-db1e02e91b8e::
I0507 21:42:38.303847   51886 s3client.go:85] Service ID: 79343dfa-0f8c-4e1c-94b2-261177e0d31a, region_id: global, Name: cos-image-sync-test-jeebgl
I0507 21:42:38.303899   51886 s3client.go:86] crn: crn:v1:bluemix:public:cloud-object-storage:global:a/c265c8cefda241ca9c107adcbbacaa84:79343dfa-0f8c-4e1c-94b2-261177e0d31a::
I0507 21:42:41.219867   51886 s3client.go:85] Service ID: 11c445a8-9d5e-4484-acfc-e24c861fea0a, region_id: global, Name: example-24rjm-infra-image-registry
I0507 21:42:41.219961   51886 s3client.go:86] crn: crn:v1:bluemix:public:cloud-object-storage:global:a/c265c8cefda241ca9c107adcbbacaa84:11c445a8-9d5e-4484-acfc-e24c861fea0a::
I0507 21:42:43.972678   51886 s3client.go:85] Service ID: 54dde550-394c-4834-b374-55978709a589, region_id: global, Name: example-md7mk-infra-image-registry
I0507 21:42:43.972760   51886 s3client.go:86] crn: crn:v1:bluemix:public:cloud-object-storage:global:a/c265c8cefda241ca9c107adcbbacaa84:54dde550-394c-4834-b374-55978709a589::
I0507 21:42:46.713414   51886 s3client.go:85] Service ID: f05943b1-fc01-45ae-9ad6-9fe4d4a44b92, region_id: global, Name: power-images-cos
I0507 21:42:46.713516   51886 s3client.go:86] crn: crn:v1:bluemix:public:cloud-object-storage:global:a/c265c8cefda241ca9c107adcbbacaa84:f05943b1-fc01-45ae-9ad6-9fe4d4a44b92::
I0507 21:42:49.944670   51886 s3client.go:85] Service ID: d5ed5069-a51b-40f2-9698-442e15946a20, region_id: global, Name: New-keer-cos
I0507 21:42:49.944760   51886 s3client.go:86] crn: crn:v1:bluemix:public:cloud-object-storage:global:a/c265c8cefda241ca9c107adcbbacaa84:d5ed5069-a51b-40f2-9698-442e15946a20::
I0507 21:42:53.277728   51886 s3client.go:85] Service ID: c603df1b-f528-4c64-b9d0-4f13d198091a, region_id: global, Name: hyp-as-a-service
I0507 21:42:53.277790   51886 s3client.go:86] crn: crn:v1:bluemix:public:cloud-object-storage:global:a/c265c8cefda241ca9c107adcbbacaa84:c603df1b-f528-4c64-b9d0-4f13d198091a::
I0507 21:42:53.983816   51886 upload.go:162] Bucket power-oss-bucket not found in the account provided
Error: create Cloud Object Storage instance either offline or use the pvsadm command

Added the bucket exists check when cos-instance-name is provided in the below PR
https://github.com/ppc64le-cloud/pvsadm/pull/610

Thanks for taking a look, If its working as expected, feel free to close the issue.

Closing this issue as this is working as expected.

/close


Ajax requests returning views does not include Auth-status

Whenever I do a ajax request to render a view file, the Auth::check() returns false, authenticated or not.
I've done some digging but I simply can't find the reason for this.
I'm running latest Homestead, and latest Laravel release.
Example:
Javascript:
$.ajax({
		url: '/api/get-nav',
		method: 'GET',
		success: function(response)
		{
			$("#main-nav").html(response);
		}
	});

Controller method:
function getNav()
	{
		return view('includes.nav')->render();
	}

Auth::check() returns false / 0.
I've tried multiple versions of the controller method (and also moving it directly to the routes file, just for testing).. including:
return view('includes.nav');

return Response::make(view('includes.nav')->render());

return view()->make('includes.nav');

return view()->make('includes.nav')->render();

return \View::make('includes.nav');

All returns same (and they probably should too, since it's all the same..)
Maybe I'm missing something?

I'm so embarrassed. I forgot to group with the "web" middleware.. I must be tired this monday.
NEVERMIND.