Looking for advice on signing artifacts for Weaver / semantic conventions

The Semantic Conventions Tooling Working Group is looking for advice on signing artifacts.
Background.
Weaver is a templating tool we own that generates markdown documentation and code from semantic conventions.  It is distributed as the following:

Zipped binaries
Executable (Windows)
MSI (Windows)
Docker container (primary usage)

You can find an asset list on the 0.4.0 Release
Weaver includes a command line interface that generates code, calculates statistics and allows interactive interaction with the repository to discover names/signals that can be generated.
Today, weaver artifacts are unsigned and, e.g., the windows distributions issue a security notice.
The distribution tooling we have has guidance on how to solve this: cargo-dist Signing and Attestation
Needs
We'd love guidance (ideally in the form of a How-to-Guide) on how to sign our artifacts.  Particularly:

An integration guide on recommended options from Otel Security SiG
A mechanism to update Github Action workflows to sign all artifacts (ideally supported by cargo-dist).
A shared set of keys that denote "This was built by open-telemetry automation" that is owned by security sig but we can leverage for signing artifacts we publish.

While we don't have an official recommendation right now, we have implemented code signing for the Collector and are gathering learnings from that. It would be valuable to us if you could follow what we are doing with the Collector and share your experience.
@cpanato helped us implement the code signing there, perhaps he'd be able to help you with this as well.

I was able to get to this today. The current link to the attestation documentation for cargo is this: https://opensource.axo.dev/cargo-dist/book/supplychain-security/attestations/github.html
It uses GitHub's attestation features, described here: https://github.blog/2024-05-02-introducing-artifact-attestations-now-in-public-beta/
The blog post has a "how it works" section, which matches my understanding of sigstore and how we are doing with the Collector: we do the release from within a GitHub workflow, which obtains an OIDC token from GitHub. An ephemeral private key is generated, and this token is used with the key to sign the artifact that is being released. The results are recorded in the transparency logs, which can be verified by users.
What I like about using GitHub attestations is that it allows GitHub users to use gh attestation verify, but you'd still need to provide instructions to your users on how to verify the artifacts. For the Collector, we are using cosign, which should also work with cargo-dist/github, as they all use the same infra behind the scenes (especially the transparency logs).
https://github.com/open-telemetry/opentelemetry-collector?tab=readme-ov-file#verifying-the-images-signatures

@jpkrohling Thanks again for looking into this. I plan to add the GH attestations to weaver going forward.  You can see we did for docker attestations here: https://github.com/open-telemetry/weaver/pull/319


Whitespace characters added to start of each line when pasting text

Environment
Windows build number: 19041.388
Windows Terminal version: 1.1.2021.0 (applicable to version too 1.0.1811.0)

Any other software?
WSL2 running Ubuntu 20.04

Steps to reproduce
Copy a multiline text file using

cat config | clip.exe

or

cat config followed by selection with mouse and right-click or Ctrl+Shift+C

Open nano and paste the text using

Right-click

or

By pressing Ctrl+Shift+V

Expected behavior
Text is pasted as displayed by cat, without any whitespace characters at the start of individual lines
Sample of displayed text:

Actual behavior
Multi-line text which does not have whitespaces at the start of new lines is pasted correctly.
Multi-line text with some indented lines is not pasted correctly, whitespaces start getting appended at the start of each line after the first occurrence of a whitespace character.
Sample of how text gets pasted:

Your text editor is in autoindent mode, but the pasted text contains literal whitespace.
If I’m reading between the lines, this is a request for bracketed paste mode (so nano knows when to ignore the leading whitespace)
/dup #395

Your text editor is in autoindent mode, but the pasted text contains literal whitespace.
If I’m reading between the lines, this is a request for bracketed paste mode (so nano knows when to ignore the leading whitespace)
/dup #395

Exactly, I did have autoindent enabled for nano. Disabling it allows to paste correctly.


Still 15 bytes unread

Warning: assert(): Still 15 bytes unread in xenialdan\BossBarAPI\BossEventPacket failed in /storage/sdcard0/Genisys/src/pocketmine/network/Network.php on line 256
I don't know why this always happen

Old AF. "1 byte" also appears.

I did turned it off

Thats weird.

Closing due to new PMMP packet solving


Macro's with pass by reference parameters don't work

Laravel Version: 8.75.0
PHP Version: 8.1

Description:
Steps To Reproduce:
function passByReferenceBug(&$array) {
	$array[] = "should be appended";
}

Arr::macro("testBug", "passByReferenceBug");

$array = [];

Arr::testBug($array);

dump($array); // returns []

passByReferenceBug($array);

dump($array); // returns ["should be appended"] <== this time it actually appends like it should

Hey @lurza, this indeed doesn't work and is expected. If you want to attempt to change this behaviour, feel free to attempt a PR.

For future reference:
Macro's use __call and __callStatic internally. These don't support call by reference.


add questions for GPU logic

some question marks after code review.

@SamYuan1990 let's wait #1325

@SamYuan1990 let's wait #1325

ok

@rootfs , may I rebase this PR to see if those questions are still validated or this PR is out of date?


How to transfer money to client's wallet?

I would like to transfer money from a mangopay user's wallet to platform owner or client's wallet.
I tried this way but it doesn't work:
Wallet clientWallet = mangopayApi.Clients.getWallet(FundsType.FEES, CurrencyIso.GBP);

Transfer transfer = new Transfer();
transfer.AuthorId = mangopayUserId;
transfer.DebitedWalletId = userWalletId;
transfer.CreditedWalletId = clientWallet.Id;
...
mangopayApi.Transfers.create(transfer);

I got ResponseException with message "CreditedWalletId":"Wallet not found". It seems client wallet Id can't be used.
What is the correct way to transfer money from user wallet to client wallet? Should I use a normal wallet instead?

Hi @s101d1 - it is infact not possible to add funds to your Fees wallet in this way. The only option is to use the Fees parameter when doing transfers/payments. If you wish to discuss a certain use case, I suggest you write to<EMAIL_ADDRESS>with your ClientId and detailing more about your usecase :-)

My use case is simple, I want the user to pay me everytime they do certain action. So it's between user and me (as platform owner), not between user and user. Is it still possible in mangopay?

I suggest you discuss with our support by email on the best way to set this up please :-)


Implement LowerPoutine : sample -> param+observe

MAP estimation requires a param+observe pattern for each estimated parameter in the model (see #573 ). This is awkward. We should instead provide something like a poutine.lower() to automatically transform sample sites in this way. This will require some refactoring of Poutine and apply_stack, since current poutines are restricted to 1-1 site transformations, whereas poutine.lower() needs to transform one sample site into two sites.

@eb8680 Do you have any interest in refactoring to allow Poutines to perform one-to-many site transforms? If not I might do it this weekend.

@nbren12 Hopefully this would allow you to write simpler models.

  You're free to call sample/observe/param within the evaluation of a site, as long as those calls all respect our global rules of naming.  In this case, you could just give the parameter site a different name by adding a prefix or suffix.

Oh great, if that's the case I might just add poutine.lift to #573.

I believe this is accomplished now by AutoDelta


Add the schema admin api

Motivation
Continue the issues of #4782
Verifying this change
Add the tests for it
Does this pull request potentially affect one of the following parts:
If yes was chosen, please highlight the changes
Dependencies (does it add or upgrade a dependency): (no)
The public API: (no)
The schema: (yes)
The default values of configurations: (no)
The wire protocol: (no)
The rest endpoints: (no)
The admin cli options: (no)
Anything that affects deployment: (no)
Documentation
Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)
If a feature is not applicable for documentation, explain why?
If a feature is not documented yet in this PR, please create a followup issue for adding the documentation

run Integration Tests

run java8 tests

run java8 tests

run java8 tests

run  Integration Tests

run Integration Tests

run Integration Tests

overall looks good. can you add tests for these endpoints?

OK, I will add tests and fix these problems from your comment

run cpp tests

run Integration Tests

run Integration Tests

run Integration Tests

Change the Milestone to 2.4.2, because of conflict.


Possible bug: userParam float value written out with comma on Windows

There is a line that the parser writes out for each MS2 spectrum I think, it looks like this when a file is converted on german Windows 8.1:

and this is the same file converted on Linux:

On Windows a comma is used for the float number.
This case might be similar to #45  and a problem with locale, it was discovered on a german Windows installation.
Tested with ThermoRawFileParser v1.1.11 and  ThermoRawFileParserGUI v1.2.1

Hi @caetera @nielshulstaert ,
I saw this issue got closed and would like to know if the commit will be ported
to master and released? In it's current state it is broken for us.
Best,
Timo

Hi Timo,
Niels promised to merge all to master and release it very soon.

Hi, thanks for the quick fixes - any chance to get a new release?


clock_timekeeping: remove enter_critical_section in sched/clock/clock_timekeeping.c

Summary
clock_timekeeping: remove enter_critical_section in sched/clock/clock_timekeeping.c
reason:
We would like to replace the critical section with a small lock.
Impact
clock_timekeeping
Testing
ci

[Experimental Bot, please feedback here]
No, this PR does not fully meet the NuttX requirements.  While it provides a summary and mentions testing, it lacks crucial details.
Here's what's missing:

Summary: Needs more detail.  Why do you want to replace the critical section with a lock? What problem does this solve?  What specific changes are being made (e.g., "Replacing enter_critical_section() and leave_critical_section() with calls to nxmutex_take() and nxmutex_give() on a newly introduced mutex")?
Impact:  The current entry is insufficient.  Address all the impact points with "YES" or "NO" and provide descriptions where necessary.  Consider:

Impact on user:  Likely no, but explain why.
Impact on build: Possibly no, but state explicitly.
Impact on hardware:  Probably no, but state explicitly.
Impact on documentation: If no documentation changes are needed, state that explicitly.
Impact on security: Does using a mutex instead of a critical section have any security implications? (e.g., priority inversion).
Impact on compatibility: Are there any backward compatibility concerns?

Testing: "ci" is not sufficient. Provide specific details about the build host (OS, CPU architecture, compiler) and the target platform (architecture, board, configuration).  Include actual testing logs demonstrating the issue before the change and the improved behavior after the change.  Just saying "works as intended" is not enough; show evidence.

The PR needs to be significantly expanded to meet the requirements.  Provide the missing information to ensure a thorough review.


ACL manager is logging invalid characters

There are some ACL manager logs with invalid characters in them. This may not be a complete list, and worth a trawl through to fix. The following are good examples.
2015-01-14 11:22:09,331 [INFO] calico.acl_manager.acl_publisher 93: ACL Manager received packet {u'issued':<PHONE_NUMBER>336.414, u'type': u'GETACLSTATE', u'endpoint_id': u'e8c43c84379a'} from  ^@k\213Ej
2015-01-14 12:04:44,516 [INFO] calico.acl_manager.acl_publisher 97: Received query message ['\x00k\x8bE\xac', '', '{"issued":<PHONE_NUMBER>520.584, "type": "GETACLSTATE", "endpoint_id": "e8c43c84379a"}'] from Felix
2015-01-14 12:04:44,516 [DEBUG] calico.acl_manager.acl_publisher 108: Sending response message:

What do you think is invalid here?

\x00k\x8bE\xac does not look like useful information. Annoyingly, I had truncated the first line which had another crazy unprintable string in it, but have fixed that now.

I suspect it's the zmq connection ID, though.

Correct. That is actually fine, because it's emphatically not a string. That's just how Python prints bytestrings: it treats them as ascii-ish. It's a bit weird that it's five bytes, but hey, that's how it goes.
The 'from' in the above line seems weird though.

Putting non-printable characters into logs is not a good idea (for example, grep doesn't work on ACL manager log files unless you give it some extra arguments), and the fact that there is nothing in the logs to say who the ACL manager is talking to is really bad too. I think the connection ID is not what the code means to log; it is probably trying to log the ID (hostname) of the remote entity (which it has available to use).
This bug is making diagnosis of the connection issues we've seen quite a lot harder, incidentally. Feels to me like a must fix for the next release.

I think you're misunderstanding the situation here, and that this is actually not a bug at all.
Firstly, there are not any non-printable characters in the log.  The log contains an entirely printable sequence of characters: , x, 0, 0, k, etc. that represents some characters (that were unprintable) in the bytestream.  In other words, Python has already handled the unprintability for us.  This part of the log may still look unprintable, but it actually isn't.
Secondly, the conceptual data being logged is the content of a 0MQ message.  When an application (such as ACL manager here) uses a ROUTER socket, and that socket receives a message, 0MQ passes up a multipart message, whose first part identifies the peer that sent the message - using the characters that this issue is discussing - and whose third part is the data that the peer sent.  That's just what 0MQ does, and I think it makes perfect sense for ACL Manager to log out that complete message.
I agree with you that the receiving application should ideally then log a more intelligible representation of the sending peer - such as the peer's IP address or hostname - but that should be  in addition to the message logging that we're seeing here, not instead of it.

Oops - just saw Cory's prior comment about the 'from' line.  I agree with that, as that would be an example of 'the receiving application should ideally then log a more intelligible representation of the sending peer'.  And also the characters in that line look as though they probably were logged unprintably...
So if this issue is all about fixing the 'from' log line, I'm happy with that.

Worth clarifying that the characters are not printable. They are not; they were made printable by me typing out the visual representation of the binary bytes in emacs.

Fix available in #123.


User ability function in middleware.

I have noticed that, when I add the middleware below to my route, it would cause an exception.
'middleware' => ['ability:admin|owner,create-post|edit-user,true']

The exception is,
InvalidArgumentException in EntrustUserTrait.php line 176:

It tells the third parameter 'true' is not a valid argument. I debug in the code and them found that the 'true' is treated as a string but not a boolean. So it throw the InvalidArgumentException.
Then I test with other code and found all type will be treated as string in the middleware.
So, is't necessary to change the way to pass the third parameter 'true'? Or is there another way to avoid this problem?

Hey atani!  Thanks for pointing that out.
I've got a pull request open fixing this issue, you could probably patch your local version of the middleware with it to temporarily correct it.
In the mean-time, maybe try using a value that's more easily coerced into a boolean such as 0 or 1?


CIF-2895 - Extend ProductAttributeFilterInput with custom filters

This is a draft only, to show the E2E usage for adding custom filters.
Please also have a look at:

https://github.com/adobe/aem-core-cif-components/pull/938
https://github.com/adobe/aem-cif-guides-venia/pull/300

Changes made:

Added new setCustomFilter method to ProductAttributeFilterInput which allows to set a custom filter that is not in the schema.

The idea is to extend any input type with this method.

Added productAttributeFilterHook with replaceProductFilterWith methods to AbstractProductRetriever.

Allows to completely replace the ProductAttributeFilterInput with something custom.
Product identifier is passed as parameter, so this can be used, if required.

Added example in MyProductTeaserImpl to showcase how everything together could look like.

Next steps:

Review draft
Update generator to update all input types.
Release new Magento GraphQL Java schemas for version >=2.4.2
Update all retrievers that use hooks in the CIF Core Components
Add working example to Venia

This looks good.

The idea is to extend any input type with this method.

Why do we need that on all input types? Wouldn't CategoryFilterInput and ProductAttributeFilterInput be enough, if it keeps the efforts lower?

@Buuhuu This is because the generator only knows a generic input type. We could hardcode the types we want to have the logic added to, but then the generator is not generic anymore and we would need to adapt it for future schema changes.
Effort-wise it does not really matter, since the logic is added only once to the generator code and automatically added to all input types.

Makes sense 👍


Fixed bugs in issue-credential by adding the issuer and prover wallet…

Fixed bugs in issue-credential by adding the issuer and prover wallet creation and it's exception handling since it was missing and added the wallet module followed by a dot operator since open_wallet() is a function of the wallet module. Also parsed genesis_file_path to string in save_schema_and_cerd_def since PosixPath isn't JSON serializable
Signed-off-by: dorry<EMAIL_ADDRESS>

@brentzundel  Are you going to merge my pull request or is there something else that I should do? excuse my ignorance  :")


Always returning true on Chrome 95.0.4638.69 (Official Build) (64-bit)

Checking on console, jsHeapSizeLimit is exactly the same for both private and normal tabs

Hi.
I'm running Version 95.0.4638.69 (Official Build) (x86_64) on macOS and I am unable to reproduce the error.
I have some questions, if you would:

Does detectincognito.com provide an accurate reading, or are you getting false results there too?
Are you running any extensions? If so, disable all of them and restart Chrome to see if the error persists.
What OS are you running?
Can you reproduce the error on another device?

Thanks.

hummm funny enough detectincognito.com works.

Does detectincognito.com provide an accurate reading, or are you getting false results there too? Accurate
Are you running any extensions? If so, disable all of them and restart Chrome to see if the error persists. No
What OS are you running? Windows
Can you reproduce the error on another device? Yes

Are you running the script locally or remotely? If you're running it locally, it does seem to produce a false positive. I'll add that to the documentation.

But I see this...

jsHeapSizeLimit does not change between normal and incognito browsing. What does change between modes is the quota property that navigator.webkitTemporaryStorage.queryUsageAndQuota() spits out. If the quota is less than jsHeapSizeLimit, it's incognito.

ok, I will give it a try remotely

Happy to help!


[KYUUBI #1923] Add GetFunctions for trino engine

Why are the changes needed?

Add GetFunctions for trino engine.
How was this patch tested?

[ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible

[ ] Add screenshots for manual tests if appropriate

[x] Run test locally before make a pull request

@hddong @yaooqinn @pan3793, could you please help to review this pull request?

thanks, merged to master


ValidationError: Product validation failed error when running npm run db:seed

When I run npm run db:seed to seed the database, it is giving me below error.

You can get hits how to solve this in this video: https://youtu.be/UhXjemzbNSs?t=1192
Full terminal output:
><EMAIL_ADDRESS>db:seed /Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server
> node ./setup/seed-products.js

Seed starting
mongodb://localhost:27017/appdb
Seed finished
(node:32458) DeprecationWarning: collection.ensureIndex is deprecated. Use createIndexes instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
Database connection established
/Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/document.js:2760
    this.$__.validationError = new ValidationError(this);
                               ^

ValidationError: Product validation failed: size: Path `size` is required., expiryDate: Path `expiryDate` is required., manufacturingDate: Path `manufacturingDate` is required., description: Path `description` is required.
    at model.Document.invalidate (/Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/document.js:2760:32)
    at /Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/document.js:2552:17
    at /Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/schematype.js:1273:9
    at processTicksAndRejections (node:internal/process/task_queues:78:11)
    at runNextTicks (node:internal/process/task_queues:65:3)
    at processImmediate (node:internal/timers:437:9) {
  errors: {
    size: ValidatorError: Path `size` is required.
        at validate (/Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/schematype.js:1270:13)
        at /Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/schematype.js:1253:7
        at Array.forEach (<anonymous>)
        at SchemaNumber.SchemaType.doValidate (/Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/schematype.js:1198:14)
        at /Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/document.js:2545:18
        at processTicksAndRejections (node:internal/process/task_queues:78:11)
        at runNextTicks (node:internal/process/task_queues:65:3)
        at processImmediate (node:internal/timers:437:9) {
      properties: {
        validator: [Function (anonymous)],
        message: 'Path `size` is required.',
        type: 'required',
        path: 'size',
        value: undefined
      },
      kind: 'required',
      path: 'size',
      value: undefined,
      reason: undefined,
      [Symbol(mongoose:validatorError)]: true
    },
    expiryDate: ValidatorError: Path `expiryDate` is required.
        at validate (/Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/schematype.js:1270:13)
        at /Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/schematype.js:1253:7
        at Array.forEach (<anonymous>)
        at SchemaDate.SchemaType.doValidate (/Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/schematype.js:1198:14)
        at /Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/document.js:2545:18
        at processTicksAndRejections (node:internal/process/task_queues:78:11)
        at runNextTicks (node:internal/process/task_queues:65:3)
        at processImmediate (node:internal/timers:437:9) {
      properties: {
        validator: [Function (anonymous)],
        message: 'Path `expiryDate` is required.',
        type: 'required',
        path: 'expiryDate',
        value: undefined
      },
      kind: 'required',
      path: 'expiryDate',
      value: undefined,
      reason: undefined,
      [Symbol(mongoose:validatorError)]: true
    },
    manufacturingDate: ValidatorError: Path `manufacturingDate` is required.
        at validate (/Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/schematype.js:1270:13)
        at /Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/schematype.js:1253:7
        at Array.forEach (<anonymous>)
        at SchemaDate.SchemaType.doValidate (/Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/schematype.js:1198:14)
        at /Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/document.js:2545:18
        at processTicksAndRejections (node:internal/process/task_queues:78:11)
        at runNextTicks (node:internal/process/task_queues:65:3)
        at processImmediate (node:internal/timers:437:9) {
      properties: {
        validator: [Function (anonymous)],
        message: 'Path `manufacturingDate` is required.',
        type: 'required',
        path: 'manufacturingDate',
        value: undefined
      },
      kind: 'required',
      path: 'manufacturingDate',
      value: undefined,
      reason: undefined,
      [Symbol(mongoose:validatorError)]: true
    },
    description: ValidatorError: Path `description` is required.
        at validate (/Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/schematype.js:1270:13)
        at /Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/schematype.js:1253:7
        at Array.forEach (<anonymous>)
        at SchemaString.SchemaType.doValidate (/Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/schematype.js:1198:14)
        at /Users/foyzul/Documents/foyzul/github/rbac-mern-boilerplate/server/node_modules/mongoose/lib/document.js:2545:18
        at processTicksAndRejections (node:internal/process/task_queues:78:11)
        at runNextTicks (node:internal/process/task_queues:65:3)
        at processImmediate (node:internal/timers:437:9) {
      properties: {
        validator: [Function (anonymous)],
        message: 'Path `description` is required.',
        type: 'required',
        path: 'description',
        value: undefined
      },
      kind: 'required',
      path: 'description',
      value: undefined,
      reason: undefined,
      [Symbol(mongoose:validatorError)]: true
    }
  },
  _message: 'Product validation failed'
}
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>db:seed: `node ./setup/seed-products.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>db:seed script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!      /Users/foyzul/.npm/_logs/2021-09-21T03_52_39_643Z-debug.log

Issue is fixed for now. Thanks to @minhajul-karim brother.

in this u have to change the name field in html


add personal ptfolio imran nazir

Good work. I am merging your PR.
Do give us a star by hitting the star button of this repo!


Needs Work PR events have no content in NotificationLevel.COMPACT

When a pull request is marked as Unapproved, and Slack notifications are enabled with Notification Level: Compact, the Slack notification shows no content:

As far as I can tell, the new "Needs Work" display text still maps to PullRequestAction.UNAPPROVED, so the relevant code in stash2slack is still PullRequestActivityListener.java#L212-L222. Though from reading the code I'm not sure why it wouldn't have the "unapproved pull request <%s|#%d: %s>" text.

Looks like this is a duplicate of #50, and related to #43 and #58. I'll close


HubSpot CRM | Response schema is missing

Type of Connector

[ ] certified
[ ] custom
[x] independent publisher

Name of Connector
HubSpot CRM
Describe the bug
The response schema is missing, which means no dynamic content is shown as outputs and makers have to use parse JSON to parse the response.
Is this a security bug?

[ ] yes
[x] no

What is the severity of this bug?

[x] severity 1: Connector is broken or there's a very serious issue
[ ] severity 2: One or more important connector features are down
[ ] severity 3: Minor issue

To Reproduce
Create a flow with a button trigger, add an action, add a compose action, and the output only shows a body object from the action before the compose.
Expected behavior
Create a flow with a button trigger, add an action, add a compose action, and the output should show properties from the action before the compose.

@Laskewitz thanks again for submitting this issue and for making sure that we are producing great connectors with little to no barrier of entry. @troystaylor and our team has tried implementing this with C# code, but unfortunately the responses are dynamic and there is no way to add schemas that would work for all.


Latest master build from amazonaws is not updated

We have our master build hosted on https://leafletjs-cdn.s3.amazonaws.com/content/build/master/leaflet-src.js, but it's not latest master.
Expected
Hosted master build version is actual master
Current
Hosted master build version is 1.0.0-beta.2 (6e9236d)
Any thoughts?

https://leafletjs-cdn.s3.amazonaws.com/content/leaflet/master/leaflet-src.js

Is that documented somewhere?
@mourner @cherniavskii @Falke-Design

The master JS files are no longer exposed in docs (but still useful sometimes for debugging etc.), but the zip file with the distribution is on the download page https://leafletjs.com/download.html

https://leafletjs-cdn.s3.amazonaws.com/content/leaflet/master/leaflet-src.js

I do not know if this is a bug or not, but currently there is Leaflet 1.7.1+master.7dcc3de instead of latest e3719a317ab325ed091fbbc6bfd34640fe19e13e.

The master JS files are no longer exposed in docs (but still useful sometimes for debugging etc.), but the zip file with the distribution is on the download page https://leafletjs.com/download.html

@mourner What's reason why we don't link the current master in the docs?
I know that it exists but I need to search it always and it would be very useful if it would be linked somewhere. Maybe in the download page else in the Readme.md or Contribution.md on Github?

I do not know if this is a bug or not, but currently there is Leaflet 1.7.1+master.7dcc3de instead of latest e3719a3.

Interesting! For some reason, for the latest commit, the action only uploaded leaflet.js and leaflet.zip, not the other files:
upload: dist/leaflet.js to s3://***/content/leaflet/master/leaflet.js
upload: dist/leaflet.zip to s3://***/content/leaflet/master/leaflet.zip

As opposed to the earlier commit deploy job:
upload: dist/images/layers-2x.png to s3://***/content/leaflet/master/images/layers-2x.png
upload: dist/images/marker-shadow.png to s3://***/content/leaflet/master/images/marker-shadow.png
upload: dist/leaflet.js to s3://***/content/leaflet/master/leaflet.js
upload: dist/images/marker-icon-2x.png to s3://***/content/leaflet/master/images/marker-icon-2x.png
upload: dist/images/marker-icon.png to s3://***/content/leaflet/master/images/marker-icon.png
upload: dist/leaflet.css to s3://***/content/leaflet/master/leaflet.css
upload: dist/images/layers.png to s3://***/content/leaflet/master/images/layers.png
upload: dist/leaflet.js.map to s3://***/content/leaflet/master/leaflet.js.map
upload: dist/leaflet.zip to s3://***/content/leaflet/master/leaflet.zip
upload: dist/leaflet-src.js.map to s3://***/content/leaflet/master/leaflet-src.js.map
upload: dist/leaflet-src.js to s3://***/content/leaflet/master/leaflet-src.js
upload: dist/leaflet-src.esm.js to s3://***/content/leaflet/master/leaflet-src.esm.js
upload: dist/leaflet-src.esm.js.map to s3://***/content/leaflet/master/leaflet-src.esm.js.map

@jonkoops any ideas what might cause the differences?

What's reason why we don't link the current master in the docs?

Because it's not meant to be used by users — it's fetched directly from S3 instead of a CDN, and it's bad practice to use a constantly updating unversioned URL of a library on any page. The only place I can think of for including URLs to these is the CONTRIBUTING.md doc.

@mourner Strange, yeah that is definitely not supposed to happen. I can't see anything specific that might be causing the issue but I suspect that there is some mechanism that detects the need to upload a file and these are not uploaded. If I re-run the action we get an even shorter list as only the ZIP file is uploaded (see here).

The Amazon documentation seems to further confirm this suspicion:

Syncs directories and S3 prefixes. Recursively copies new and updated files from the source directory to the destination. Only creates folders in the destination if they contain one or more files.

@mourner I think I have a fix for this issue here https://github.com/Leaflet/Leaflet/pull/7853. It looks like AWS uses just the file size as a means of determining if a file has changed, which means sometimes older versions are kept (which is a stupid default).


fix: use FLAG_IMMUTABLE to fix android 31 issues

see https://github.com/EddyVerbruggen/nativescript-nfc/issues/78

This is the wrong package


Extension settings, fullscreen and picture-in-picture (Chrome only)

Added a setting menu to the extension icon with the following options:

Show time code (default: enabled)
Show fullscreen button (default: enabled)
Show Picture-in-Picture button (default: disabled, only in Chrome)

The extension icon was also changed. It's now simplified to fit in the browser bar. I'm not a designer, but I think it is looking okay.

A fullscreen and Picture-in-Picture mode was implemented. The fullscreen button will switch the video to fullscreen, but also keeps the custom UI and native Instagram UI. Since the Picture-in-Picture API isn't supported in Firefox, it is a Chrome-only feature. The PiP mode will just pop-out the video, without custom nor native controls.

Fixes #23 and #25


Suggestions & questions

Those are just my suggestions & questions for bStats after a quick navigation of the site.
There can be other issues with those or similar suggestions but this should not be considered duplicate as it is not one suggestion, it is a pack of them. If there is a duplicate, I can remove it.
Suggestions:
Memory amount (i.e 8GB, 16GB) - Can be exact amount or only GBs, Can be JVM heap or the whole physcial system memory.
Linux distribution (i.e RHEL, CentOS, Ubuntu) - The current OS graph only shows Linux as Linux and when clicking it to view details, it shows kernel versions. Perhaps it should show distribution name and version too, or a separate graph for it?
JVM vendor (i.e OracleJDK, OpenJDK, AdoptOpenJDK, OpenJ9) - Probably easier than the first two. There is a system property that exposes it and it is named something like java.vm.name, can't remember exact name right now.
Questions:
Why the Velocity page is like that (no data)? Are they testing bStats or planning to add?
What is Linux > Other when clicked on Linux on the OS graph? It seems like clicking on OS lists versions (for Linux, kernel versions), there is 4.19s, 5s, but what is Other, which is the most used one apparently?

Thank you for the suggestions!

Linux distribution (i.e RHEL, CentOS, Ubuntu) - The current OS graph only shows Linux as Linux and when clicking it to view details, it shows kernel versions. Perhaps it should show distribution name and version too, or a separate graph for it?

Iirc, there's an issue somewhere that discuses this feature. Unfotunately, I wasn't able to find it. The problem with linux distribution is that there's no easy way to detect it. It is possible (and there are libraries for it) but bStats is intended to have a small footprint and not rely on 3rd party libraries.

JVM vendor (i.e OracleJDK, OpenJDK, AdoptOpenJDK, OpenJ9) - Probably easier than the first two. There is a system property that exposes it and it is named something like java.vm.name, can't remember exact name right now.

java.vm.name gives OpenJDK 64-Bit Server VM on my local machine, so you seem to be correct. :)

Why the Velocity page is like that (no data)? Are they testing bStats or planning to add?

I was working on adding support for Velocity plugins. The new >= 2.2.0 Metrics classes now also support Velocity.

What is Linux > Other when clicked on Linux on the OS graph? It seems like clicking on OS lists versions (for Linux, kernel versions), there is 4.19s, 5s, but what is Other, which is the most used one apparently?

If there are more than 20 distinct values in a pie, the "Other" slice contains all values that would be contribute under 1% of the pie. The full data is still accessible with the api: https://bstats.org/api/v1/plugins/1/charts/os/data


refactor phn fixtures + unit tests to remove duplication (used to be required because of filenames)

right now the tests and the data for the 'phn' format from the TIMIT dataset are duplicated
there's a good reason for the data to be duplicated: the .wav files from one version use a NIST format that can be parsed by soundfile but not by scipy.wavefile, as described in this README in the test data:
https://github.com/NickleDave/crowsetta/blob/main/tests/data_for_tests/audio_WAV_annot_PHN/README.md
so we want to make sure we can parse both
but there's not a very good reason to duplicate the unit tests, literally the only thing that's different is the fixture we pass in
this is one of those cases where it would be convenient to be able to use fixtures to parametrize tests
there's a workaround here:
https://docs.pytest.org/en/6.2.x/proposals/parametrize_with_fixtures.html
but I have read this multiple times I am in this situation and still am not sure whether it actually works
and I end up just creating a factory function that accepts e.g. the extension as an argument
(e.g., list_of_phns(format='PHN')) which works fine

This is also an issue on Mac, I just realized :frowning_face:
So basically trying to contribute blows up when you clone the repo, if you're on any system besides linux.
Time to fix.
I do think it makes sense to just distinguish them "semantically"

I'll just call one 'wav-nist' to distinguish it from the other

So the original issue was about duplicating the tests.
Renaming fixes the clobbering but we still have duplicated tests, and we're not really using the different audio file formats even, as far as I can tell

Correction: we definitely use the different audio file formats; the .phn format reports onsets and offsets in terms of sample number (i.e., index), and we convert to seconds using the sampling rate from the file

I think the 'phn' format should have the same logic as 'birdsong-recognition-dataset', where we provide the option to specify a location where the .wav files can be found, but default to None, and in the case of that default, we look in the parent of the .phn path, i.e. we assume the file has the same name but with .ext .wav or .WAV instead of .phn
There's an extra step here because we have to check for either .wav or .WAV, but overall it's the same idea

I can remove duplication of the tests by globbing all the PHN files together, and letting the annotation format itself check for the .wav as I just described in the previous comment
This is best done by having lists of paths declared outside of fixtures so that the globbing can happen programatically.
This makes it possible later to assign subsets of the constants to parametrized fixtures, e.g. if I only want to check 'wav-nist' format PHNs.
I'm already in the middle of refactoring fixtures this way in the version-4.0 branch.
So I'm going to leave this open but make it an issue for that branch

Fixed in #161


Tutorial Page xpa-sac-hxm-successfactors-writeback.md Issue. PROD

Tutorial issue found: https://github.com/sap-tutorials/Tutorials/blob/master/tutorials/xpa-sac-hxm-successfactors-writeback/xpa-sac-hxm-successfactors-writeback.md contains invalid tags. Even though your tutorial was created, the invalid tags listed below were disregarded. Please double-check the following tags:

software-product-function>sap-analytics-cloud-analytics-designer

Affected server: PROD

updated to
software-product-function>sap-analytics-cloud,-analytics-designer
with https://github.com/sap-tutorials/Tutorials/pull/18899


Error while running after installing the package.

I ran into this error as i installed the package, can you have a look.
14:12:02  [WARNING]: Did not find matching node for patch with name 'write_api_timeline_by_organization' in the 'models' section of file 'models/base/google/write_api/information_schema_write_api_timeline_by_organization.yml'
Compilation Error
  dbt found two resources with the database representation "`project`.`dataset`.`with_better_pricing_on_physical_billing_model`".
  dbt cannot create two resources with identical database representations. To fix this,
  change the configuration of one of these resources:
  - model.dbt_bigquery_monitoring.dataset_with_better_pricing_on_physical_billing_model (models/storage/datamart/dataset_with_better_pricing_on_physical_billing_model.sql)
  - model.dbt_bigquery_monitoring.table_with_better_pricing_on_physical_billing_model (models/storage/datamart/table_with_better_pricing_on_physical_billing_model.sql)

Hello @letmestaybehind, thanks for the report!
I'll have a look at it later today.
I've a fairly big changes that was in standby (as I'm working on other projects too) that I might ship as well.
Which version did you use? 0.4.0?
What version of dbt are you using?

Thank you for the quick response!
I have used the version 1.8.3, registered with the bigquery adapter 1.8.2. And yes, i used your version 0.4.0.

Could you try running (adapted to your gcp project):
DBT_BQ_MONITORING_GCP_PROJECTS="['your_gcp_project']" dbt run -s tag:dbt-bigquery-monitoring -t prod
?

15:27:34  [WARNING]: Did not find matching node for patch with name 'table_storage_usage_timeline_by_organization' in the 'models' section of file 'models/base/google/tables/information_schema_table_storage_usage_timeline_by_organization.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'table_snapshots' in the 'models' section of file 'models/base/google/tables/information_schema_table_snapshots.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'table_options' in the 'models' section of file 'models/base/google/tables/information_schema_table_options.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'table_storage_usage_timeline' in the 'models' section of file 'models/base/google/tables/information_schema_table_storage_usage_timeline.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'table_storage' in the 'models' section of file 'models/base/google/tables/information_schema_table_storage.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'tables' in the 'models' section of file 'models/base/google/tables/information_schema_tables.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'table_constraints' in the 'models' section of file 'models/base/google/tables/information_schema_table_constraints.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'columns' in the 'models' section of file 'models/base/google/tables/information_schema_columns.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'table_storage_by_organization' in the 'models' section of file 'models/base/google/tables/information_schema_table_storage_by_organization.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'constraint_column_usage' in the 'models' section of file 'models/base/google/tables/information_schema_constraint_column_usage.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'key_column_usage' in the 'models' section of file 'models/base/google/tables/information_schema_key_column_usage.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'column_field_paths' in the 'models' section of file 'models/base/google/tables/information_schema_column_field_paths.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'organization_options' in the 'models' section of file 'models/base/google/configuration/information_schema_organization_options.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'effective_project_options' in the 'models' section of file 'models/base/google/configuration/information_schema_effective_project_options.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'project_options' in the 'models' section of file 'models/base/google/configuration/information_schema_project_options.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'organization_options_changes' in the 'models' section of file 'models/base/google/configuration/information_schema_organization_options_changes.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'project_options_changes' in the 'models' section of file 'models/base/google/configuration/information_schema_project_options_changes.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'bi_capacities' in the 'models' section of file 'models/base/google/bi_engine/information_schema_bi_capacities.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'bi_capacity_changes' in the 'models' section of file 'models/base/google/bi_engine/information_schema_bi_capacity_changes.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'search_indexes' in the 'models' section of file 'models/base/google/search_indexes/information_schema_search_indexes.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'search_index_columns' in the 'models' section of file 'models/base/google/search_indexes/information_schema_search_index_columns.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'reservations_timeline' in the 'models' section of file 'models/base/google/reservations/information_schema_reservations_timeline.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'assignment_changes' in the 'models' section of file 'models/base/google/reservations/information_schema_assignment_changes.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'assignments' in the 'models' section of file 'models/base/google/reservations/information_schema_assignments.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'reservation_changes' in the 'models' section of file 'models/base/google/reservations/information_schema_reservation_changes.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'capacity_commitment_changes' in the 'models' section of file 'models/base/google/reservations/information_schema_capacity_commitment_changes.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'reservations' in the 'models' section of file 'models/base/google/reservations/information_schema_reservations.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'capacity_commitments' in the 'models' section of file 'models/base/google/reservations/information_schema_capacity_commitments.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'shared_dataset_usage' in the 'models' section of file 'models/base/google/datasets/information_schema_shared_dataset_usage.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'schemata' in the 'models' section of file 'models/base/google/datasets/information_schema_schemata.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'schemata_replicas' in the 'models' section of file 'models/base/google/datasets/information_schema_schemata_replicas.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'schemata_links' in the 'models' section of file 'models/base/google/datasets/information_schema_links.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'schemata_options' in the 'models' section of file 'models/base/google/datasets/information_schema_schemata_options.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'vector_index_columns' in the 'models' section of file 'models/base/google/vector_indexes/information_schema_vector_index_columns.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'vector_index_options' in the 'models' section of file 'models/base/google/vector_indexes/information_schema_vector_index_options.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'vector_indexes' in the 'models' section of file 'models/base/google/vector_indexes/information_schema_vector_indexes.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'jobs_timeline' in the 'models' section of file 'models/base/google/jobs_timeline/information_schema_jobs_timeline.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'jobs_timeline_by_organization' in the 'models' section of file 'models/base/google/jobs_timeline/information_schema_jobs_timeline_by_organization.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'jobs_timeline_by_user' in the 'models' section of file 'models/base/google/jobs_timeline/information_schema_jobs_timeline_by_user.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'jobs_timeline_by_folder' in the 'models' section of file 'models/base/google/jobs_timeline/information_schema_jobs_timeline_by_folder.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'streaming_timeline_by_organization' in the 'models' section of file 'models/base/google/streaming/information_schema_streaming_timeline_by_organization.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'streaming_timeline_by_folder' in the 'models' section of file 'models/base/google/streaming/information_schema_streaming_timeline_by_folder.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'streaming_timeline' in the 'models' section of file 'models/base/google/streaming/information_schema_streaming_timeline.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'routine' in the 'models' section of file 'models/base/google/routines/information_schema_routines.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'parameters' in the 'models' section of file 'models/base/google/routines/information_schema_parameters.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'routine_options' in the 'models' section of file 'models/base/google/routines/information_schema_routine_options.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'sessions_by_project' in the 'models' section of file 'models/base/google/sessions/information_schema_sessions_by_project.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'sessions_by_user' in the 'models' section of file 'models/base/google/sessions/information_schema_sessions_by_user.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'object_privileges' in the 'models' section of file 'models/base/google/access_control/information_schema_object_privileges.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'jobs' in the 'models' section of file 'models/base/google/jobs/information_schema_jobs.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'jobs_by_user' in the 'models' section of file 'models/base/google/jobs/information_schema_jobs_by_user.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'jobs_by_folder' in the 'models' section of file 'models/base/google/jobs/information_schema_jobs_by_folder.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'jobs_by_organization' in the 'models' section of file 'models/base/google/jobs/information_schema_jobs_by_organization.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'jobs_by_project' in the 'models' section of file 'models/base/google/jobs/information_schema_jobs_by_project.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'views' in the 'models' section of file 'models/base/google/views/information_schema_views.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'materialized_views' in the 'models' section of file 'models/base/google/views/information_schema_materialized_views.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'write_api_timeline' in the 'models' section of file 'models/base/google/write_api/information_schema_write_api_timeline.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'write_api_timeline_by_organization' in the 'models' section of file 'models/base/google/write_api/information_schema_write_api_timeline_by_organization.yml'
15:27:34  [WARNING]: Did not find matching node for patch with name 'write_api_timeline_by_folder' in the 'models' section of file 'models/base/google/write_api/information_schema_write_api_timeline_by_folder.yml'

dbt cannot create two resources with identical database representations. To fix this,
  change the configuration of one of these resources:
  - model.dbt_bigquery_monitoring.jobs_with_cost (models/base/jobs_with_cost.sql)
  - model.dbt_bigquery_monitoring.storage_with_cost (models/base/storage_with_cost.sql)

I think I know why you have warnings, I'll fix it though I'm curious I don't see them.
However it doesn't block me to run the package.
I might double check later today if I can reproduce it as an installed package instead of running the package directly (I'm running the models directly without installing it in another dbt project).

Sure, let me know if you find something. I would be happy to also collaborate in future as i see scope in this project!

Sure feel free to create an issue with what you need.
I'll create a sample working dbt project with the package and if it works you might be able to compare the settings (and if it doesn't work I can fix it👌)

Ok I managed to reproduce the issues in dbt 1.8.X, I was using dbt 1.7.X while developing, I'll be looking into fixing the project for dbt 1.8.X

Thank you for keeping me updated! Very eager to test this out as soon as it is released.

Ok it's now working on my end.
Two issues in my opinion:

I renamed Google based models to limit the risk of model name collision in the previous latest version (0.5.0) and it wasn't aligned anymore with the actual model. It's now fixed.
I published 0.5.0 using a tag... but I didn't merge it on the main and it looks like it wasn't working as intended when pulled using dbt packages.

Anyway I published 0.5.1 which should work for you too🙏

Thank you for the detailed updated, i will try it on my end and get back to you!

On running the below command, i still received the error, but fewer than before. The version i used was 0.5.1
DBT_BQ_MONITORING_GCP_PROJECTS="['your_gcp_project']" dbt run -s tag:dbt-bigquery-monitoring
22:10:37  [WARNING]: Did not find matching node for patch with name 'information_schema_schemata_links' in the 'models' section of file 'models/base/google/datasets/information_schema_links.yml'
22:10:41  Encountered an error:
Compilation Error
  dbt found two resources with the database representation "`project`.`dataset`.`with_better_pricing_on_physical_billing_model`".
  dbt cannot create two resources with identical database representations. To fix this,
  change the configuration of one of these resources:
  - model.dbt_bigquery_monitoring.dataset_with_better_pricing_on_physical_billing_model (models/storage/datamart/dataset_with_better_pricing_on_physical_billing_model.sql)
  - model.dbt_bigquery_monitoring.table_with_better_pricing_on_physical_billing_model (models/storage/datamart/table_with_better_pricing_on_physical_billing_model.sql)

Ok there's still a small fix for schemata but in my opinion, you actual issue isn't related to the extension.
Compilation Error
  dbt found two resources with the database representation "`project`.`dataset`.`with_better_pricing_on_physical_billing_model`".
  dbt cannot create two resources with identical database representations. To fix this,
  change the configuration of one of these resources:
  - model.dbt_bigquery_monitoring.dataset_with_better_pricing_on_physical_billing_model (models/storage/datamart/dataset_with_better_pricing_on_physical_billing_model.sql)
  - model.dbt_bigquery_monitoring.table_with_better_pricing_on_physical_billing_model (models/storage/datamart/table_with_better_pricing_on_physical_billing_model.sql)

My guess is that this error is caused by a dbt override macro that strip table_ and dataset_ from the name of the output of the table resulting in a collision.

Yes, i have overridden the generate_alias_name macro by adding a variable as a prefix for my models in CI. Can this be a reason?

I wonder, I don't know what your implementation is doing but without any macro the package appears to work on my end.

Hey 👋
Any update on this issue?
I hope you managed to fix it 👀

Hey! I was not able to get it running, maybe it has something to do with the way dbt is setup on our end. But it still shows "dbt found two resources..." but lesser after you made an update. So, i believe you could still do something about it, but I hope it gets running.

I'm not sure how it's on your end but I don't know how to reproduce the problem.
If you create a new dbt project and run it as a package, maybe it would and then you would be able to pinpoint what's the settings that make dbt strip the prefix on those models.
Renaming is likely not a good idea as it would break other users usages of those datamarts.

This is what i have defined as vars, is this correct?
bq_region: 'europe-west3'
input_gcp_projects: [ 'jaffle_project' ]

Also, could it be because you are using an ephermal model, and since i have two projects, they are conflicting?
Source:
#https://stackoverflow.com/questions/78437439/dbt-conflicts-in-resource-naming-across-different-gcp-projects
#https://discourse.getdbt.com/t/error-when-same-variable-is-used-in-target-of-2-different-models/6885/3
#https://stackoverflow.com/questions/63677530/dbt-cannot-create-two-resources-with-identical-database-representations

Also, let me email you the custom generate_alias_name macro that is used in my project, maybe that could point out things for you?

Also, after removing the macro, it works! Idk what would be the workaround for this!

Yep as expected, it's your macro.
I sent you a fix.

Yes, it's the macro. However, the fix still causes the same issue.

Alright I think I get it why, easy fix though

Fixed! Thank you once again for all the support.

Also, is the data loaded from inception, or how old the data is?

The default lookback window is 7 days. There's a variable to override it.
The models are incremental to keep up with previous runs.


Verify dependencies

This adds a grunt task to validate shared dependencies with cartodb.js.
In order to keep dependencies synced between two projects this will make test task to fail if dependencies mismatch.
Having dependencies in sync is important to not have different ones bundled into the final dist files. This reduces the size of bundles.

cc @viddo

Not sure if I should add some kind of test for this.

:+1: Let's give this a try

I'm merging it. I hope this in combination with https://github.com/CartoDB/deep-insights.js/pull/32 will help to keep shared dependencies under control.


Deprecate project

Homebrew will now take care of getting the necessary resource blocks if you supply it the initial download URL for a package, so this project isn't really that important.

Can you explain that in more detail? What would I need to do instead of my current process to create a formula for a Python CLI tool?
https://til.simonwillison.net/homebrew/packaging-python-cli-for-homebrew

Found this note on https://docs.brew.sh/Python-for-Formula-Authors

You can use brew update-python-resources to help you write resource stanzas. To use it, simply run brew update-python-resources <formula>

That page goes on to continue to recommend homebrew-pypi-poet though.

@PythonCoderAS What actions would you like me to take or what language would you like to see in this repo?

Found this note on https://docs.brew.sh/Python-for-Formula-Authors

You can use brew update-python-resources to help you write resource stanzas. To use it, simply run brew update-python-resources <formula>

That page goes on to continue to recommend homebrew-pypi-poet though.

Seems to be old.
    #
    # This test will fail and we won't accept that! For Homebrew/homebrew-core
    # this will need to be a test that verifies the functionality of the
    # software. Run the test with `brew test homebrew-pypi-poet`. Options passed
    # to `brew install` such as `--HEAD` also need to be provided to `brew test`.
    #
    # The installed folder is not in the path, so use the entire path to any
    # executables being tested: `system "#{bin}/program", "do", "something"`.
    system "false"
  end
end

Would you like to send them a note? I don't control that page.
On Mon, Jun 19, 2023, 17:31 PythonCoderAS @.***> wrote:

Found this note on https://docs.brew.sh/Python-for-Formula-Authors
You can use brew update-python-resources to help you write resource
stanzas. To use it, simply run brew update-python-resources
That page goes on to continue to recommend homebrew-pypi-poet though.
Seems to be old.
#
# This test will fail and we won't accept that! For Homebrew/homebrew-core
# this will need to be a test that verifies the functionality of the
# software. Run the test with brew test homebrew-pypi-poet. Options passed
# to brew install such as --HEAD also need to be provided to brew test.
#
# The installed folder is not in the path, so use the entire path to any
# executables being tested: system "#{bin}/program", "do", "something".
system "false"
endend
—
Reply to this email directly, view it on GitHub
https://github.com/tdsmith/homebrew-pypi-poet/issues/74#issuecomment-1597909932,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABKOQPC5WTTUOMMGD2X4M3XMDVN5ANCNFSM6AAAAAAT4IJMUM
.
You are receiving this because you commented.Message ID:
@.***>


ShapedWindow doesn't work without button click

Versions

Python: 3.6.3
OS: Windows 10 64 bit
Kivy: 1.10.1.dev0
Kivy installation method: wheel

Description
I was using this example and wanted to create a shaped window from the starting without any button click. But apparently it only works when I place win.shape_mode = 'default' inside any button event (pressed or released) and perform the click event with mouse. I also tried with trigger_action to trigger button event automatically but it hangs the window. Same thing happens if I try with threading.Timer to hit win.shape_mode = 'default' again after few seconds.

I'm not quite sure what are you talking about. Could you elaborate? Here's a very simple example of how to run an already shaped window.
from kivy.config import Config
Config.set('graphics', 'shaped', 1)

from kivy.app import App
from kivy.uix.button import Button
from kivy.core.window import Window
from kivy.properties import StringProperty

class ShapedWindow(App):
    def build(self):
        self.default_shape = Config.get('kivy', 'window_shape')
        Window.shape_mode = 'colorkey'

        return Button()

if __name__ == '__main__':
    ShapedWindow().run()

Well, looks like with Window.shape_mode = 'colorkey' it's working. But what about shape_mode 'default' or 'binalpha'? I was hoping to make it work without excluding any color; with an Alpha image.

@NafisAbdullahKhan it actually works, but it doesn't load properly unless your Window is the same size as the image you want to use for the shape (otherwise you get errors in the console). For example you can get this state after changing the image to alpha_shape and clicking on the default button. The same applies for binalpha.
The first error you will see is after you press the alpha_shape button, that's because the Window's size wasn't (800, 600) i.e. the size of default_shape. That's why you would probably see some 512x512 Window that isn't affected by any shape although from the first look it "should" (no, it really shouldn't).
These are the steps you need to use to actually shape the Window (I'm going to put them to docs asap):

set Window size to the size of the shape (with Config!)
set Window shape to some picture you want to use
set the shape_mode for the Window

from kivy.config import Config
Config.set('graphics', 'shaped', 1)

# size first if you don't want to use Clock
#Config.set('graphics', 'width', 512)
#Config.set('graphics', 'height', 512)

from kivy.resources import resource_find
alpha_shape = resource_find(
    'data/logo/kivy-icon-512.png'
)

from kivy.clock import Clock

from kivy.app import App
from kivy.uix.button import Button
from kivy.core.window import Window

class ShapedWindow(App):
    def build(self):
        Window.size = (512, 512)
        Clock.schedule_once(self.set_shape)
        return Button()

    def set_shape(self, *args):
        Window.shape_image = alpha_shape
        Window.shape_mode = 'default'

if __name__ == '__main__':
    ShapedWindow().run()

Note: Notice the blue-ish strip in the circular Window. That's because of resizing Window after it has been created. Windows for whatever reason apparently applies some style to the Window although it shouldn't. That happens only if you resize the Window and isn't present if you set the size properly with Config

Thanks. It works. So, the difference is that I have to use kivy.clock instead of using threading.timer or Button.trigger_action(). Because I knew the window size and the shape_image size has to be same and tried with that before. except I didn't try with kivy.clock or setting window sizes in Config initially. If it worth mentioning, using threading.timer still the window becomes unresponsive. But I got what I needed, so thanks again!


secret channel test

Builds on @fiskfan1999's work in #134. (@fiskfan1999, sorry I stole this from you! It can be challenging to get these fully merge-ready, I thought I'd spare you the back-and-forth for now.)

I noticed that during charybdis test, the assertion for when the non-chanop joined the secret channel failed in the following way:
        self.sendLine("second", "LIST")
        replies = self.getMessages("second")
        # Should be only one line with command RPL_LIST
>       self.assertEqual(get_listed_channels(replies), {"#gen"})
E       AssertionError: None
E       assert set() == {'#gen'}
E         Extra items in the right set:
E         '#gen'
E         Full diff:
E         - {'#gen'}
E         + set()```

I believe this means that this daemon has a bug in which when a non-chanop joins the secret channel, it doesn't show up when they run LIST even though it should according to RFC1459 et al. I just noticed the solanum test failed in the same way.

Do you think this is accurate?

Thanks to both of you!


iOS device generates different unique id's from DeviceInfo.getUniqueId() for different apps on single device.

iOS device generates different unique id's from DeviceInfo.getUniqueId() for different apps on single device. Where it's working fine for android and generates same unique id for multiple apps on same device.
Summary
| OS Version  | 14 and above
Current behavior
DeviceInfo.getUniqueId() - This method is generating different unique ID's for multiple apps on same device.
Expected behavior
DeviceInfo.getUniqueId() - This method should generate same unique ID for multiple apps on same device.

The behavior you expect appears to be based on this statement:

iOS: This is IDFV or a random string if IDFV is unavaliable

Are you sure IDFV is available? You will make progress on this issue by reaching into node_modules, directly manipulating the objective-c code to add logging statements (stackoverflow has examples if you're unfamiliar), then launching your app from Xcode on to a real device so you can see the console output. If you log all the arguments going in to the getUniqueId method, log results of any control flow branches, log arguments going into system APIs and the results from them, you'll have the problem isolated in a few minutes.
If there's something we're doing wrong please post a PR and we can merge and release it immediately
Cheers


NetrcParseError: bad toplevel token

Hello,
I am tranferring files from kobo.ifrc.org to kobonew.ifrc.org.
I am seeking assistance in solving the error NetrcParseError: bad toplevel token when calling $ python post.py

The HOME.netrc file looks like this

Any suggestions to solve this error are appreciated. I am using Python 3.8.
Thank you in advance.
Maude

Sorry we didn't notice this sooner. I'm glad you were able to get help with this internally.
(for anyone else who arrives here: make sure you save the .netrc file as plain text, not RTF)


error loading the tables

Bug description
Hello all, I connect Oracle successful. But when i explore tables, i get error with status code 422.
Who can help me?
Many thanks!

How to reproduce the bug

build new image from image superset:latest

FROM apache/superset
USER root
RUN pip install cx_Oracle==8.0.1
RUN apt update
RUN apt -y install alien libaio1 wget
RUN wget https://download.oracle.com/otn_software/linux/instantclient/2113000/oracle-instantclient-basic-<IP_ADDRESS>.0-1.el8.x86_64.rpm
RUN alien -i oracle-instantclient-basic-<IP_ADDRESS>.0-1.el8.x86_64.rpm
RUN sh -c "echo /usr/lib/oracle/21/client64/lib > /etc/ld.so.conf.d/oracle-instantclient.conf"
RUN ldconfig
USER superset

docker compose -f docker-compose-non-dev.yml up
connect oracle by string below:

oracle+cx_oracle://ot:Orcl1234@<IP_ADDRESS>:1521/?service_name=dinhphu

Screenshots/recordings
No response
Superset version
master / latest-dev
Python version
3.9
Node version
16
Browser
Chrome
Additional context
Oracle version = 21
Checklist

[X] I have searched Superset docs and Slack and didn't find a solution to my problem.
[X] I have searched the GitHub issue tracker and didn't find a similar bug report.
[X] I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section.

I created new 'ALL_TABLES' and it's not working


Issue-1031 : Cleaning up the log4j variable

Closes this issue https://github.com/google/data-transfer-project/issues/1031

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


two small oversights

Hi Pascal,
I still see no packages on PyPI, perhaps the not updated version number causes that?

Absolutely ! The upload failed, and I was wondering why. You found the answer!

Thanks for the PR, I will merge it and regenerate the packages

We just have to wait until the wheels are created: https://github.com/pthom/imgui_bundle/actions/runs/3514956366
Usually, it takes 2h40m.
The previous had failed during upload


Support for partial citation links

It would be great to add a feature that only links with the year field and keeps the other parts.

Could you provide a minimal example and explain what it is that you expect should happen and that currently does not happen?

I just pushed some changes and you can use an extra dot to avoid creating a link. E.g<EMAIL_ADDRESS>Is this what you needed?

Unfortunately, not. Maybe it's a citeproc related issue.
I have seen this issue https://github.com/jgm/pandoc-citeproc/issues/268 in the archived pandoc-citeproc repository. Some people want to link/color the entire citation, not only the year. Maybe that's why this feature is changed in citeproc. As the repository is archived, I am unable to discuss this issue there.
I am using the Chicago Manual of Style 17th edition (author-date) csl style from Zotero.
Using syntax [@stairs2002], it will give me this result:

Using syntax @stairs2022, it will give me this result:

What I want is to have "Stairs" in normal text mode and "2002" is a hyperlink to the reference in "(Stairs 2002)".

Duplicated


pattern is not a Buffer in on('pmessageBuffer', (pattern, channel, message) => undefined)

I would expect that the pattern argument passed into the listener registered with redis.on('pmessageBuffer', (pattern, channel, message) => console.log) would be a Buffer, however, it is a string.
Here's how to reproduce it:
const Redis = require('ioredis');
let redis = new Redis();
redis.psubscribeBuffer(Buffer.from('channel*'));
redis.on('pmessageBuffer', console.log);

Then publish some messages (I used redis-cli):
PUBLISH channel Hello
PUBLISH channel123 Hello

The results printed to the console of the JS app are:
channel* <Buffer 63 68 61 6e 6e 65 6c> <Buffer 48 65 6c 6c 6f>
channel* <Buffer 63 68 61 6e 6e 65 6c 31 32 33> <Buffer 48 65 6c 6c 6f>

I would expect the "channel*" strings to be Buffers too.

It makes sense in some aspect. However, I'd like to know what's the use case for requiring patterns to be returned as buffers, since the patterns are typically utf-8 strings.

Without going into too much detail, I have some binary IDs in my application which I include in key and channel names. Thanks to ioredis supporting Buffers, I can avoid converting them to strings and make my app a bit more efficient. Besides, Buffer patterns and channels are supported by ioredis, so apparently there have been already some use cases where they were required...
I'm not really suggesting any new functionality or changes required for a specific use case but rather pointing out an inconsistency in the API. In my opinion, passing patterns as Buffers to the 'pmessageBuffer' event listeners would make the API more consistent, as the channels and data are also Buffers and the event name is pmessageBuffer. Obviously, the pmessage event should still report patterns as strings.

@luin what's the use case for the channel to be returned as a buffer though?  I'm used to channels being strings as well.
At first I was just looking at the pattern.  Only later did I start using the channel argument, and since the pattern was a string, I expected the channel to be a string...

@luin I guess I wouldn't have run into this if I were using TypeScript, but I'm using Flow and even the flow-typed defs got this wrong:
export type PMessageBufferListener = (
  pattern: string,
  channel: string,
  message: Buffer
) => mixed

So the fact that channel is a buffer is probably too surprising, and very easy to miss in the README.

I'd like to use binary channel names and binary pattern names because I have an application with thousands of pubsub messages per second where id's are cryptographic hashes.
Redis works perfectly fine with binary channel names and binary patterns, for example I can subscribe to any messages to channels prefixed with 0x01 by passing pattern 0x012a (2a being ascii of *). However ioredis doesn't support it them as it converts and returns all received patterns to utf8 which means I can't reliably match psubscribe messages to their listeners as bytes may be lost in conversion. Returning the pattern as the original buffer, without stringifying to utf8, would fix this.


Document running of background jobs in Azure Container Apps.

[Enter feedback here]
Add info for running background jobs in Azure Container Apps.
Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 50a65e47-b024-0c7c-0ee9-21ff095abafd
Version Independent ID: a764689a-168d-dcef-a297-c47f84ea2d12
Content: Background jobs guidance - Best practices for cloud applications
Content Source: docs/best-practices/background-jobs.md
Service: architecture-center
Sub-service: best-practice
GitHub Login: @EdPrice-MSFT
Microsoft Alias: pnp

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

#please-close


NetworkInterfaceAttachmentArgs.cs not usable, takes wrong set of inputs

What happened?
Compare
https://github.com/pulumi/pulumi-aws/blob/master/sdk/dotnet/Ec2/Inputs/NetworkInterfaceAttachmentArgs.cs
with
https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/network_interface_attachment and
https://github.com/pulumi/pulumi-aws/blob/master/sdk/java/src/main/java/com/pulumi/aws/ec2/NetworkInterfaceAttachmentArgs.java
.NET NetworkInterfaceAttachmentArgs from NetworkInterfaceAttachmentArgs.cs takes instance, deviceIndex and attachmentId as inputs but attachmentId should be an output, not an input
Expected Behavior
The NetworkInterfaceAttachmentArgs class should take instance, deviceIndex and networkInterface as inputs
(I don't know if those properties should end with Id or not... I'm not in a position to make a judgement call)
Steps to reproduce
The bug made the class unusable
Output of pulumi about
CLI
Version      3.68.0
Go Version   go1.20.4
Go Compiler  gc
Additional context
No response
Contributing
Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

Oops sorry, there's another NetworkInterfaceAttachmentArgs at
https://github.com/pulumi/pulumi-aws/blob/master/sdk/dotnet/Ec2/NetworkInterfaceAttachment.cs#L120
and that was what I needed


enhance dark mode

Is your feature request related to a problem? Please describe. dark mode reduces eye strain and improves readability
Describe the solution you'd like Many users uses dark mode because it provides comfort of use at night or in dark environments. Dark mode can save energy consumption on devices and reduce eye strain
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

Go ahead @gaur15 📌

Sorry sir I  was late in my pr but now my issue of enhancing dark mode is done in website. Now can I change toggle button between the two to make it look good


Test env build

If EMBER_ENV is test then Rollup is run with tests.js as its entry file, where tests.js is a generated file importing all colocated -test files. Colocated means this:
src
└── ui
    └── components
        └── hello-glimmer
            ├── component-test.ts
            ├── component.ts
            └── template.hbs

Concerns like which test framework is used are left to the app/blueprint.

@rwjblue This seems pretty good to me now. Ready for a review at your convenience.

Do you have a spike of the blueprint that I can take a look at?  Just to see some example usage?
Also, we should add blueprints/glimmer-component-test and blueprints/glimmer-helper-test to this repo so that when someone runs ember g glimmer-component they get a test...

@rwjblue Blueprint: https://github.com/glimmerjs/glimmer-blueprint/compare/master...robbiepitts:testing


JAVA-913: Redesign IndexMetadata API.

See CASSANDRA-10216 for details.

Added a version requirement check to one of the tests (feel free to squash that when merging).  This looks good to me :+1:

Added another test (for testing with multiple indexes on same column - not really necessary but figured would be good to add) and also added 'kind' validation.   PR still looks good to me :+1:

I noticed via cassandra-dtests that it was possible to add secondary indexes to materialized views.   I noticed that the driver didn't support that yet, so i added it here in 92dabb3 since it seemed pretty straightforward, feel free to back out/change/etc. if it isn't an appropriate change.
Secondary indexes are semi-busted on C* trunk right now (added comment to CASSANDRA-9921), so the test I added currently fails (unless you put a breakpoint before the execute statement and add the index manually twice), but should pass once fixed in C*.

lgtm :+1: thanks for finding out that 2is on mvs are allowed!

@tolbertam I just pushed a commit reverting indexes on materialized views following the decision in CASSANDRA-9921. Could you kindly review it again?

Sounds good, taking a look :)

looks good to me :+1:


[Bug]: Cannot perform backup due to file not exist

Is there an existing issue for this?

[X] I have searched the existing issues

Description
When do backup (follow this) I got Error: ENOENT: no such file or directory, open '/opt/appsmith/info.json'
I manage to solve it by making fake info.json  (copied content from fresh docker-compose version)
Steps To Reproduce
Try do backup when info.json not exist (question is why it's not exists)
Public Sample App
No response
Environment
Deploy Preview
Issue video log
No response
Version
v1.9.39

@shirobachi can you share a screenshot of the  /opt/appsmith dir?

Here you go:
backend
editor
entrypoint.sh
healthcheck.sh
init_ssl_cert.sh
install_docker.sh
prepare-image.mjs
pull_resource.sh
renew-certificate.sh
rts
run-java.sh
run-keycloak.sh
run-nginx.sh
run-postgres.sh
run-starting-page-init.sh
run-with-env.sh
start_app.sh
starting-page-init.py
templates
update-and-restart-supervisor.sh
utils

@shirobachi I'm glad this is resolved. This was likely an issue with older deployments. Let us know if you see this again


Pin github.com/aws-controllers-k8s/pkg to v0.0.10

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

/retest

/retest


Add USB connectors

https://en.wikipedia.org/wiki/USB#Receptacle_(socket)_identification
Symbols so far:

If this is OK, I can add the components as well.

Regarding the names: I think the names would be more intuitive if they included not only the pin number but the standard / type. i.e.:

USB 1/2 connector type A/B
USB 2/3/4 connector type C

I like the symbols because they are very uniform. But I was more used to have all the pins on one side (for USB A/B at least). But for the C type one probably always wants the pins split to both sides.

Yep, I'd prefer consistency.

I removed the COMPONENT name from the default value and rebased the branch.
Only open issue left is the DPWR pin requirement above.

@ubruhin all issues resolved if you agree with the solution above.


Django 1.9 compatibility

Using your module with Django 1.8 I had the following warning:
formfields.py:1: RemovedInDjango19Warning: The django.forms.util module has been renamed. Use django.forms.utils instead.

That should be okay for now.
Django keeps doing backward incompatible changes in almost every release :disappointed:
By the time django 1.9 is released, I'll make a fix for this.

commit #16 should fix this warning.


Breakpoints don't appear in editor even though they get hit on execution

VSCode Version: Code 1.19.2 (490ef761b76b3f3b3832eff7a588aac891e5fe80, 2018-01-10T15:49:04.682Z)
OS Version: Darwin x64 17.4.0
Extensions:

Extension
Author (truncated)
Version

solargraph
cas
0.13.0

vscode-standardjs
che
1.2.1

npm-intellisense
chr
1.3.0

path-intellisense
chr
1.4.2

vscode-npm-script
eg2
0.3.3

flow-for-vscode
flo
0.7.3

search-node-modules
jas
1.3.0

node-module-intellisense
lei
1.5.0

debugger-for-chrome
msj
4.2.1

Ruby
reb
0.17.0

nodejs-extension-pack
wad
0.1.9

JavaScriptSnippets
xab
1.5.0

ReactSnippets
xab
2.0.0

Steps to Reproduce:
Not sure. I rebooted my Mac and it started happening. I tried launching as 'code --disable-extensions' as per another bug logged on this issue, but that didn't fix things for me.

Reproduces without extensions: Yes

First of all please update to latest vscode.
Second please try reproducing your issue with latest vscode insiders https://code.visualstudio.com/insiders/
In case you can reproduce with latest vscode insiders please let us know of the exact steps to reproduce your problem. Thank you


Job failed with error

What version of Music Assistant has the issue?
2022.6.10
The problem
Saw the following in the logs. Not sure if it is a fanart.tv issue. Not sure where the 48 comes from either as I don’t have an album or artist by that name?
How to reproduce
So far this is a one off
Relevant log output
Logger: music_assistant
Source: /usr/local/lib/python3.9/site-packages/music_assistant/mass.py:244
First occurred: July 2, 2022, 5:05:01 PM (2 occurrences)
Last logged: July 2, 2022, 5:05:01 PM

Job [Add database://album/48 to database] failed with error 'e2996feb-86b9-3550-88ec-f1c9c9af3961/details'.
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/music_assistant/controllers/music/albums.py", line 99, in add
    await self.mass.metadata.get_album_metadata(item)
  File "/usr/local/lib/python3.9/site-packages/music_assistant/controllers/metadata/__init__.py", line 83, in get_album_metadata
    if metadata := await self.fanarttv.get_album_metadata(album):
  File "/usr/local/lib/python3.9/site-packages/music_assistant/controllers/metadata/fanarttv.py", line 70, in get_album_metadata
    data = data["albums"][album.musicbrainz_id]
KeyError: 'e2996feb-86b9-3550-88ec-f1c9c9af3961/details'

Additional information
No response
What version of Home Assistant Core are your running
2022.6.6
What type of installation are you running?
Home Assistant OS
On what type of hardware are you running?
Raspberry Pi

@OzGav
Is this a duplicate of your issue #566 raised a few days ago?

Not sure. The error is different but it might be related?

Thanks. As the issues are linked now, I close this one


Security posture of DejaVu developers.

Fellow GitHub'ers,
In order to approve use of DejaVu ElasticSearch Web UI for my employer, I need to get answers to some questions:
a) Where can I read about secure development practices used to create DejaVu?
b) Is there a page or site with security advisories and patches?
c) Were there reported vulnerabilities of DejaVu with CVSS >=7.0?
TIA,
Marlon.

@MarlonBorba Would your employer be interested in something like this? https://tidelift.com/subscription. We can potentially work with them to address the questions here if this seems worthwhile.

@siddharthlatest My question refers to the security posture of DejaVu specifically. We could consider the Tidelift paid subscription if and when we adopt DejaVu.
Note that other OSS packages like Postman offer a detailed documentation about their security posture, even for free versions, q.v. https://www.getpostman.com/security
TIA,
Marlon.


Design & UI Issues - December 2022

Remaining legacy issues from the last Thread

[x] https://github.com/OdyseeTeam/odysee-frontend/issues/2226#issuecomment-1276056059
Livestream incognito Spacing

[x] https://github.com/OdyseeTeam/odysee-frontend/issues/2226#issuecomment-1286645525
Credit Card Alignment

Separate Threads

[ ] https://github.com/OdyseeTeam/odysee-frontend/issues/2378

[ ] https://github.com/OdyseeTeam/odysee-frontend/issues/2094

[ ] Cash tip button bit higher than others

[ ]  Stuff overlapping on homepage editing

[ ] Padding for annoymous posts

In "Your Uploads" page;

[ ] Hide reposts check box

Layout shift  http://localhost:9090/@toshokanneko:d

"New videos" section come in slow for me, so things are jumping around.

#2591


how use fzf with /usr/share/applications/uxterm.desktop files

how would one use fzf so it considers the contents of *.desktop files? to give an example how uxterm could be found
$ cat /usr/share/applications/uxterm.desktop
[Desktop Entry]
Name=UXTerm
#GenericName=Terminal
Comment=standard terminal emulator for the X window system
Exec=uxterm
Terminal=false
Type=Application
Encoding=UTF-8
Icon=xterm-color_48x48
Categories=System;TerminalEmulator;
Keywords=shell;prompt;command;commandline;cmd;

find /usr/share/applications -name '*.desktop' | awk -F'=' '$1~/^Name$|^Exec$/ {ORS="\t";print $2}END{printf "\n"}' | xargs cat | fzf |  awk -F$'\t' '{print $2}'
disclaimer: that specific oneliner is untested, but the concept works. Assumes Name appears before Exec


\yii\db\pgsql\Schema thinks primary key indexes aren't unique indexes

What steps will reproduce the problem?
Using PostgreSQL 9.6 with the following DEPART table structure:
datos=> \d depart
            Table "public.depart"
 Column  |         Type          | Modifiers
---------+-----------------------+-----------
 dept_no | numeric(2,0)          | not null
 dnombre | character varying(14) |
 loc     | character varying(14) |
Indexes:
    "pk_depart" PRIMARY KEY, btree (dept_no)

As anyone knows, a primary key index is, conceptually, a "special" unique index.
But:
./yii shell
Psy Shell v0.7.2 (PHP 7.0.8-0ubuntu<IP_ADDRESS> — cli) by Justin Hileman
>>> $s = new \yii\db\pgsql\Schema
[...]
>>> $s->db = Yii::$app->db
[...]
>>> $s->findUniqueIndexes($s->getTableSchema('depart'))
=> []
>>>

What is the expected result?
\yii\db\pgsql\Schema::findUniqueIndexes() must returns primary key indexes, too:
>>> $s->findUniqueIndexes($s->getTableSchema('depart'))
=> [
     "pk_depart" => [
       "dept_no",
     ],
   ]

What do you get instead?
An empty array.
Additionally, GII model generator doesn't generate a 'unique' validation rule for the primary key attribute, but it should do it:
/**
 * @inheritdoc
 */
public function rules()
{
    return [
        [['dept_no'], 'required'],
        [['dept_no'], 'number'],
        [['dnombre', 'loc'], 'string', 'max' => 14],
    ];
}

Additional info
The problem is in https://github.com/yiisoft/yii2/blob/master/framework/db/pgsql/Schema.php#L345. The WHERE idx.indisprimary = FALSE is filtering the primary key indexes, but shouldn't.

Q
A

Yii version
2.0.10

PHP version
7.0.8-0ubuntu<IP_ADDRESS>

Operating system
Ubuntu 16.04.1 LTS 64-bit

I don't think it's a good idea to include PK into unique indexes list and especially to generate unique validator for it using Gii. The thing is that PK is usually a surrogate key i.e. serial integer which is never set directly but is taken from a sequence. For such field, unique checks are useless and are performance killers.

The findUniqueIndexes() method is to find indexes explicitly marked as unique. PK is a special case.
Changing it is a very significant backwards compatibility break.

So we won't change that. Thanks for proposal anyway.

No problem, I understand that. Obviously the best approach is to use surrogate keys whenever possible. Thank you very mucho for the explanation!

I have the same problem, but my primary key column is neither a serial nor a numerical one, instead it is of type ltree.
What about making gii to detect this difference and generate a unique rule when the column is not a serial one?
Could the function findUniqueIndexes() be changed to detect this situation?


At the end of each chapter, link to the next

Resolves #884

Limitations
For any chapter number x, the end of the chapter will attempt to link to chapter number x+1. If it doesn't find one it doesn't make the link, even if for example chapter number x+2 does exist. On the current version of the dev site (at time of writing), chapters 3 (prog lang) and 13 (comp vision) are commented out as they are not ready for release. As such chapters 2 and 12 (as well as the final one of course) won't have links to the next chapters. This is only a minor issue because we can expect that all chapters will be available on release.
If there is a missing chapter section number an error is thrown during the build/update process, so it will never link to the next chapter with chapter sections still remaining

Also
While doing this I noticed several sentences without trans tags, didn't add them in case they are done elsewhere somehow.

Nice work. Did you make note of where the missing 'trans' tags were?

chapters/*
general/index.html
among others


Problem in "Get Started with Docker - Part 5" on Visualizer

Hey, I guess I found a problem in the "Add a new service and redeploy" section, in page "Get Started with Docker - Part 5". On step 4, which is "Take a look at the visualizer", it says that I can go to either IP address of the output docker-machine ls at port 8080 to see the visualizer running. However, I strictly followed the instruction, but can only see the visualizer by the IP address of the swarm manager. I cannot open the visualizer by the worker's IP address. I guess this is because that the visualizer is only deployed on the manager, as specified in docker-compose.yml  file?
File: get-started/part5.md

Closing this ticket due to its age, and the impending refactor. If you think this is in error, feel free to reopen. Thanks!

hi please reopen.

hi. pls reopen having the same issue on visualizer part. cannot access the port :8080

solved. it was weird. i had to execute "docker-machine upgrade " then scp docker-compose.yml to node "docker-machine scp docker-compose.yml :~"


Schema isomorphism

Increasingly, it will be necessary for ZIO Schema to support schema-first approaches: for example, a new Scala project must interoperate with existing gRPC services, whose messages are defined using protobuf.
In such case, the Scala-first approach supported by ZIO Schema will not work very well, because it would require Scala developers to painstakingly create an ADT whose automatically-derived Schema will "happen" to correspond with the schema-first schema.
A much better approach is for code-generators (or ideally, macros) to programmatically create a ZIO Schema. This ZIO Schema would ideally act as a canonical definition of the protocol, but without necessarily defining or constraining what user-defined ADT a Scala developer could use to interact with that protocol.
Thanks to migrations, this approach is already possible: code-gen could generate a ZIO Schema, and then a user could "migrate" that Schema to another one, for a user-defined ADT. The drawback to this approach is that the migration cannot known to be valid or invalid at compile-time: one must actually try it at runtime to see if the migration is possible.
A way of pulling this validation to compile-time may be introducing a notion of schema isomorphism. Independently, this concept has arisen in ZIO SQL, which @sviezypan is working on. In particular, Jaro created a type class to witness that a given schema had all the right types in all the right orders to allow inserting case classes into a relational database table.
It may be the case that pulling this concept of compile-time "schema isomorphism" may enable schema-first usage of ZIO Schema, without sacrificing all the type safety and value-oriented features that ZIO Schema provides, while enabling richer integration in libraries like ZIO SQL, without them having to introduce their own more limited notions.
How might such a change be accomplished?
One idea is adding another type parameter to Schema, such that Schema[A] would become Schema[Abstract, Concrete]. The new type parameter would represent the structure of the data type, independent of ordering or specific materialization.
For example (assuming Scala 2.13 and higher, with singleton types):
type ->*[A, B]
type ->+[A, B]
// type &[A, B] = A with B

final case class Person(name: String, age: Int)

implicit val schema: Schema[("name" ->* String) & ("age" ->* Int), Person] = ...

With such a type parameter, which is not modified by Transform nodes, it becomes possible to do type-level comparisons and transformations on the structure of a schema. Moreover, it becomes possible in libraries like ZIO SQL to say, "I can work with any schema, so long as it has N fields of types X, Y, Z, ...".
This is an early draft and more work is required to make sure this direction is feasible, but other directions should also be considered so long as they satisfy these design goals.

I think we can view the algebraic definition of the type as a function of the Scala type, which means we can move the abstract type into the Schema trait, something like:
trait Schema[A] {
  type Abstract = ("name", String) & ("age", Int)
}

This is perhaps too specific, it could be generalized by using a concept similar to accessor builders:
trait Schema[A] {
  type MakeAbstract[MakeFieldType[NameType, ValueType]] = MakeFieldType["name", String] & MakeFieldType["age", Int]
}

This can be used to produce the tuple type, and indeed, probably should be for schema isomorphism, but it can be used for other purposes as well.
So we'd have something like:
trait Schema[A] {
  type MakeAbstract[MakeFieldType[NameType, ValueType]] = MakeFieldType["name", String] & MakeFieldType["age", Int]

  type Abstract = MakeAbstract[Tuple2]
}

Then, we can add a type alias in the companion object that can refine the type:
object Schema {
  type WithAbstract[A, MakeAbstract0[_, _]] = Schema[A] { type MakeAbstract[F[_, _]] = MakeAbstract0[F] }
}

Next, we ensure that constructors for Schema define MakeAbstract appropriately, and that all method-based constructors (including macro-based derivation), return the WithAbstract type, in which the abstract type member is known and specified.
If we successfully propagate this information everywhere, then we can now tell if two schemas are equivalent if they have the same abstract types. Possibly we can introduce a type class for this:
trait SchemaSubtype[S <: Schema[_], T <: Schema[_]]
object SchemaSubtype{
  implicit def schemaSubtype[L, R, A, B >: A]: SchemaSubtype[Schema.WithAbstract[L, A], SchemaSubtype[R, B] = ...
}

This may not work exactly, but the idea is we want to describe when a schema with abstract type A is a "subtype" of schema with abstract type B (modelling this based on <:< and =:= could be useful).
Then at compile time, we can know two things:

Some schema A is "bigger" than another schema B (i.e in theory, we can convert values of the bigger type to the smaller type)
Some schema A is equivalent to schema B, i.e. has the same information content, even if the types differ

This now allows projects like ZIO SQL to decode a value of type A into anything which is isomorphic to a tuple of the required types.

One thing to figure out is how fancy to get with this: should we special-case option? For any field Option[A], we don't really need a value of type A to compute it, since we can supply None. Similarly for List and other collections, which have a natural empty. It's possible we should really have AbstractMin and Abstract.
This would allow ZIO SQL to allow users to omit nullable fields; or allow converting from a smaller record to a bigger record, but only if the newly-added fields are of type Option; etc.