Limit OAuth 2 Client to a Google Apps Domain

I'd like to use this code as a base for a small python package I want to build in my work environment, but it has to be limited in accessibility to only gmail accounts within our GSuite Work domain. In searching for a way to tweak the OAuth client, I found this on Stackoverflow:
google = oauth.remote_app('google',                       base_url='https://www.google.com/accounts/',                       authorize_url='https://accounts.google.com/o/oauth2/auth',                       request_token_url=None,                       request_token_params={'scope': 'https://www.googleapis.com/auth/userinfo.email',                                             'response_type': 'code',                                             'hd':'domain.com'},                       access_token_url='https://accounts.google.com/o/oauth2/token',                       access_token_method='POST',                       access_token_params={'grant_type': 'authorization_code'},                       consumer_key=GOOGLE_CLIENT_ID,                       consumer_secret=GOOGLE_CLIENT_SECRET)
The request_token_params dictionary permits an hd variable where you can specify the domain to lock it down to.
Where would I put this kind of variable in the Bookshelf project to practice? Would it be under  service_account.py in windows directory env\Lib\site-packages\oauth2client, or somewhere else?
Thank you for your help!!!

Hi there! Sorry for the late reply. Let me investigate a bit more into where this can happen, not an OAuth expert so I'll need to do some homework.

Similar to the example mentioned in SO: https://github.com/mitsuhiko/flask-oauth/blob/master/example/google.py, it would fall under bookshelf/main.py. The code now looks like this: (adding in line numbers to help)
 43     return public_url
 44 # [END upload_image_file]
 45
 46
 47 app = Flask(__name__)
 48 app.config.update(
 49     SECRET_KEY='secret',
 50     MAX_CONTENT_LENGTH=8 * 1024 * 1024,
 51     ALLOWED_EXTENSIONS=set(['png', 'jpg', 'jpeg', 'gif'])
 52 )
 53
 54 app.debug = False
 55 app.testing = False

if you wanted to add OAuth bit, you'd add a bit of a section after the snippet above:
  44 # [END upload_image_file]
 45
 46
 47 app = Flask(__name__)
 48 app.config.update(
 49     SECRET_KEY='secret',
 50     MAX_CONTENT_LENGTH=8 * 1024 * 1024,
 51     ALLOWED_EXTENSIONS=set(['png', 'jpg', 'jpeg', 'gif'])
 52 )
 53
 54 app.debug = False
 55 app.testing = False
 56 # Don't forget to import:
 57 from flask_oauth import OAuth
 58 # You must configure these 3 values from Google APIs console
 59 # https://code.google.com/apis/console
 60 GOOGLE_CLIENT_ID = '<Client-ID>'
 61 GOOGLE_CLIENT_SECRET = '<Client-secret>'
 62 oauth = OAuth()
 63
 64 google = oauth.remote_app('google',
 65                           base_url='https://www.google.com/accounts/',
 66                           authorize_url='https://accounts.google.com/o/oauth2/auth',
 67                           request_token_url=None,
 68                           request_token_params={'scope': 'https://www.googleapis.com/auth/userinfo.email',
 69                                                 'response_type': 'code'},
 70                           access_token_url='https://accounts.google.com/o/oauth2/token',
 71                           access_token_method='POST',
 72                           access_token_params={'grant_type': 'authorization_code'},
 73                           consumer_key=GOOGLE_CLIENT_ID,
 74                           consumer_secret=GOOGLE_CLIENT_SECRET)

Note that the SO post talks about HD flag being discouraged. This answer is long overdue but hope it helps for anyone else!
I'll be closing this issue for now, but if there's any followup questions to this topic please feel free to re-open it with more info! :)


Add zha compatibility for Ewelink ZB-SW01 and ZB-SW02

I have both of them working in my house flawlessly with zha in home assistant since at least version 2021.5.0

nice, thanks!


Use DD as compute driver?

DDLite could run the LFs and feature code as DD UDFs exploiting all cores using the DD compute drivers

We are going to first try just running multiple processes from the notebook, that each have a DB connection


<video_player> Compilation error

Sorry to bother you again, I couldn't compile when integrating the video playback function. Here are some instructions for my project:

Add dependencies:
video_player: ^2.8.2
video_player_elinux:
git:
url: https://github.com/sony/flutter-elinux-plugins.git
path: packages/video_player
Ref: main
Before adding dependencies, I can compile the product normally and execute it on the embedded device. The command used is: flutter-elinux build elinux --target-backend-type=x11 --target-arch=arm64, and I am in Added set(CMAKE_CXX_COMPILER aarch64-linux-gnu-g++-10) to elinux/CmakeLists.txt.
I have asked similar questions before(#93 ), but I am a newbie, what should I do?too difficult.

if i add set(CMAKE_CXX_COMPILER /usr/bin/clang) to CMakeLists.txt,The following error will occur during compilation（also use  flutter-elinux build elinux --target-backend-type=x11 --target-arch=arm64）：
Failed to cmake build:
Scanning dependencies of target flutter_assemble
[  0%] Built target flutter_assemble
Scanning dependencies of target flutter_wrapper_plugin
Scanning dependencies of target flutter_wrapper_app
[  7%] Building CXX object flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/core_implementations.cc.o
[ 15%] Building CXX object flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/standard_codec.cc.o
[ 23%] Building CXX object flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/plugin_registrar.cc.o
[ 30%] Building CXX object flutter/CMakeFiles/flutter_wrapper_app.dir/ephemeral/cpp_client_wrapper/standard_codec.cc.o
[ 38%] Building CXX object flutter/CMakeFiles/flutter_wrapper_app.dir/ephemeral/cpp_client_wrapper/core_implementations.cc.o
[ 46%] Building CXX object flutter/CMakeFiles/flutter_wrapper_app.dir/ephemeral/cpp_client_wrapper/flutter_view_controller.cc.o
[ 53%] Building CXX object flutter/CMakeFiles/flutter_wrapper_app.dir/ephemeral/cpp_client_wrapper/flutter_engine.cc.o
/home/yone/Desktop/demo/elinux/flutter/ephemeral/cpp_client_wrapper/core_implementations.cc:16:10: fatal error: 'cassert' file not found
#include
^~~~~~~~~
1 error generated.
make[2]: *** [flutter/CMakeFiles/flutter_wrapper_plugin.dir/build.make:63：flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/core_implementations.cc.o] 错误 1
make[2]: *** 正在等待未完成的任务....
/home/yone/Desktop/demo/elinux/flutter/ephemeral/cpp_client_wrapper/standard_codec.cc:10:10: fatal error: 'cassert' file not found
#include
^~~~~~~~~
1 error generated.
make[2]: *** [flutter/CMakeFiles/flutter_wrapper_plugin.dir/build.make:76：flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/standard_codec.cc.o] 错误 1
In file included from /home/yone/Desktop/demo/elinux/flutter/ephemeral/cpp_client_wrapper/plugin_registrar.cc:5:
/home/yone/Desktop/demo/elinux/flutter/ephemeral/cpp_client_wrapper/include/flutter/plugin_registrar.h:10:10: fatal error: 'map' file not found
#include
^~~~~
1 error generated.
make[2]: *** [flutter/CMakeFiles/flutter_wrapper_plugin.dir/build.make:89：flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/plugin_registrar.cc.o] 错误 1
make[1]: *** [CMakeFiles/Makefile2:172：flutter/CMakeFiles/flutter_wrapper_plugin.dir/all] 错误 2
make[1]: *** 正在等待未完成的任务....
/home/yone/Desktop/demo/elinux/flutter/ephemeral/cpp_client_wrapper/core_implementations.cc:16:10: fatal error: 'cassert' file not found
#include
^~~~~~~~~
/home/yone/Desktop/demo/elinux/flutter/ephemeral/cpp_client_wrapper/standard_codec.cc:10:10: fatal error: 'cassert' file not found
#include
^~~~~~~~~
1 error generated.
1 error generated.
make[2]: *** [flutter/CMakeFiles/flutter_wrapper_app.dir/build.make:76：flutter/CMakeFiles/flutter_wrapper_app.dir/ephemeral/cpp_client_wrapper/standard_codec.cc.o] 错误 1
make[2]: *** 正在等待未完成的任务....
make[2]: *** [flutter/CMakeFiles/flutter_wrapper_app.dir/build.make:63：flutter/CMakeFiles/flutter_wrapper_app.dir/ephemeral/cpp_client_wrapper/core_implementations.cc.o] 错误 1
In file included from /home/yone/Desktop/demo/elinux/flutter/ephemeral/cpp_client_wrapper/flutter_view_controller.cc:5:
/home/yone/Desktop/demo/elinux/flutter/ephemeral/cpp_client_wrapper/include/flutter/flutter_view_controller.h:10:10: fatal error: 'memory' file not found
#include
^~~~~~~~
In file included from /home/yone/Desktop/demo/elinux/flutter/ephemeral/cpp_client_wrapper/flutter_engine.cc:5:
/home/yone/Desktop/demo/elinux/flutter/ephemeral/cpp_client_wrapper/include/flutter/flutter_engine.h:10:10: fatal error: 'chrono' file not found
#include
^~~~~~~~
1 error generated.
1 error generated.
make[2]: *** [flutter/CMakeFiles/flutter_wrapper_app.dir/build.make:89：flutter/CMakeFiles/flutter_wrapper_app.dir/ephemeral/cpp_client_wrapper/flutter_engine.cc.o] 错误 1
make[2]: *** [flutter/CMakeFiles/flutter_wrapper_app.dir/build.make:102：flutter/CMakeFiles/flutter_wrapper_app.dir/ephemeral/cpp_client_wrapper/flutter_view_controller.cc.o] 错误 1
make[1]: *** [CMakeFiles/Makefile2:145：flutter/CMakeFiles/flutter_wrapper_app.dir/all] 错误 2
make: *** [Makefile:130：all] 错误 2
what should i do？thanks.

Please try --system-include-directories option.
e.g.
--system-include-directories=/usr/aarch64-linux-gnu/include/c++/${version}/aarch64-linux-gnu

Please try --system-include-directories option.
e.g. --system-include-directories=/usr/aarch64-linux-gnu/include/c++/${version}/aarch64-linux-gnu

thank you for your reply. Here is some specific information:

In elinux/CmakeLists.txt I added set(CMAKE_CXX_COMPILER /usr/bin/clang).
Execute in the terminal: flutter-elinux build elinux --target-backend-type=x11 --target-arch=arm64 --system-include-directories=/usr/aarch64-linux-gnu/include/c++/10 /aarch64-linux-gnu.
The error message is as follows:
Failed to cmake build:
Scanning dependencies of target flutter_assemble
[ 0%] Built target flutter_assemble
Scanning dependencies of target flutter_wrapper_app
Scanning dependencies of target flutter_wrapper_plugin
[6%] Building CXX object flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/standard_codec.cc.o
[12%] Building CXX object flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/core_implementations.cc.o
[18%] Building CXX object flutter/CMakeFiles/flutter_wrapper_app.dir/ephemeral/cpp_client_wrapper/standard_codec.cc.o
[25%] Building CXX object flutter/CMakeFiles/flutter_wrapper_app.dir/ephemeral/cpp_client_wrapper/core_implementations.cc.o
[31%] Building CXX object flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/plugin_registrar.cc.o

/home/yone/Desktop/demo_nolibs/elinux/flutter/ephemeral/cpp_client_wrapper/standard_codec.cc:10:10: fatal error: 'cassert' file not found
#include
^~~~~~~~~
/home/yone/Desktop/demo_nolibs/elinux/flutter/ephemeral/cpp_client_wrapper/core_implementations.cc:16:10: fatal error: 'cassert' file not found
#include
^~~~~~~~~
/home/yone/Desktop/demo_nolibs/elinux/flutter/ephemeral/cpp_client_wrapper/core_implementations.cc:16:10: fatal error: 'cassert' file not found
#include
^~~~~~~~~
/home/yone/Desktop/demo_nolibs/elinux/flutter/ephemeral/cpp_client_wrapper/standard_codec.cc:10:10: fatal error: 'cassert' file not found
#include
^~~~~~~~~
1 error generated.
1 error generated.
make[2]: *** [flutter/CMakeFiles/flutter_wrapper_app.dir/build.make:76: flutter/CMakeFiles/flutter_wrapper_app.dir/ephemeral/cpp_client_wrapper/standard_codec.cc.o] Error 1
make[2]: *** Waiting for unfinished tasks....
1 error generated.
make[2]: *** [flutter/CMakeFiles/flutter_wrapper_plugin.dir/build.make:63: flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/core_implementations.cc.o] Error 1
make[2]: *** Waiting for unfinished tasks....
make[2]: *** [flutter/CMakeFiles/flutter_wrapper_app.dir/build.make:63: flutter/CMakeFiles/flutter_wrapper_app.dir/ephemeral/cpp_client_wrapper/core_implementations.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:166: flutter/CMakeFiles/flutter_wrapper_app.dir/all] Error 2
make[1]: *** Waiting for unfinished tasks....
1 error generated.
make[2]: *** [flutter/CMakeFiles/flutter_wrapper_plugin.dir/build.make:76: flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/standard_codec.cc.o] Error 1
In file included from /home/yone/Desktop/demo_nolibs/elinux/flutter/ephemeral/cpp_client_wrapper/plugin_registrar.cc:5:
/home/yone/Desktop/demo_nolibs/elinux/flutter/ephemeral/cpp_client_wrapper/include/flutter/plugin_registrar.h:10:10: fatal error: 'map' file not found
#include
^~~~~
1 error generated.
make[2]: *** [flutter/CMakeFiles/flutter_wrapper_plugin.dir/build.make:89: flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/plugin_registrar.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:193: flutter/CMakeFiles/flutter_wrapper_plugin.dir/all] Error 2
Thank you for your help, thank you.

In elinux/CmakeLists.txt I added set(CMAKE_CXX_COMPILER /usr/bin/clang).

This shouldn't be necessary.
Unfortunately, I have no suggestions, and it's generally challenging to resolve cross-building issues on other systems because we don't share a common build environment
Please see https://github.com/sony/flutter-elinux/wiki/Building-flutter-apps#cross-building-from-x64-to-arm64.

Also, please ensure that target rootfs should be used correctly when you do cross-building.


Add necessary build setup

Follow up of https://github.com/developmentseed/our-forests-tomorrow/commit/0e34e7b19588ad35a9d98b65e0e89b91d9647af4
Context: I couldn't get the build working with the hack of defining mapboxgl's workerclass directly. I chose a different approach: https://github.com/visgl/react-map-gl/issues/1266#issuecomment-1775980520 Then I forgot to commit necessary env setups. Sorry for all the hassles 🙇 @geohacker @batpad. @nerik (👋 )  (But let's move the tile to ds bucket still)

Hey @hanbyul-here!
Well, TIL, it's good to know 🙂
Thank you so much for taking the time to fresh this up!


Overview Page: Create current Jobs, empty box component

Empty box with placeholder "you have no current jobs" text
Link to component which opens large calendar/current jobs page

Decided link to current jobs page from component wasn't good UX


Clarification on steps to get started

Hey! I love the project and what you've built so far ⚡
I noticed that the guide for getting started in the README defines getting started using create-react-app whereas the installation guide on the website describes that the way to get started is by using Next.js! Just wanted to bring this to your attention; not sure if you intend to have instructions for both or just the shinier next.js :)
Again, great work! 🚀

Hey @adamkona, many thanks for the kind words and raising this issue! We will update the README as stated on the website.
You can use tremor either within a React or Next project. For new React projects, we recommend using Next.js, as it also provides a simple deployment workflow through the Vercel platform. On the website, it also states that you have the React option. But we will highlight this better.
If you have any other feedback, feel free to share with us! :)
Best, Chris

hey Adam, thanks a lot for the feedback, fixing the docs was long overdue 😄 We fixed it now in the README as well as on our website, I hope its clearer now. See you on Monday 😜

Closing as it was addressed in #158 :)


OAK-9803 : Extend DynamicSyncHandler to allow for dynamic groups

@telegrapher , i am going to merge the PR to avoid running into conflicts. i will keep the jira ticket open and will address additional review-findings as they appear. hope that is ok with you.


Show tags from the body

Problem
I want to display tags from the body of my notes, in addition to tags found in the tags property
Solution
Make all tags appear by default. Make a setting that you can toggle

Added in 1.38.0


Merge into tomcrypt

Hi, just found your project and maybe you can answer my questions. Firts of all: did you tried to merge your TLS implementation into the libtomcrypt? Or it should be as a separate project.
The libtomcrypt is used by droobear and as far I understood that's the main usage of the lib and almost nobody else doesn use it. Is it right?
The OpenWrt uses dropbear but the libtomcrypt is staticly compiled into DB so nobody else can't use it.
Recently OpenWrt added HTTPS support out of the box but they devided to use WolfSSL. So now any OpenWrt device has two crypto libraries: tomcrypt and wolfssl.
Many other packages like emailrelay are still depends on OpenSSL so now I have three libs on my router :)
The WolfSSL also have their ssh implementation which potentially can replace the Dropbear.
Is it possible somehow to solve the mess?
Or each library has it's own fetures and all software can't reuse the same.
Sorry for asking you, hope you know better.
Thank you

Hello! I think is better to keep the two libraries separated. TLSe uses only a small subset of all the tomcrypt features. Also, I know that there are forks using NaCl or other cryptolibraries. Cryptographic libraries and network protocol libraries require different skillsets. But, tlse being a single-c-file library, integrating into tomcrypt is plug and play.

Thank you for the quick response.


fix: append state param after imlicit grant response url is formatted

This prevent String.format to interpret %-signs in the state parameter.
For example if state includes a / it will be encoded as %2F and String.format
will try to interpret %2F as a substitution token and fails.

My apologies for the late reply. Thanks for the improvement.

No problem. My first test failed on this, but it was an easy one to track down. I will close the corresponding issue. thanks for the merge.


Update Hummingbot/Gateway network tests from goerli to sepolia.

Feature Suggestion
When we added support for Sepolia testnet to Hummingbot Gateway, we didn't update the unit tests (so they should still be goerli tests). Collect credit/bounty for Panoptic Labs after doing this.
reference: hummingbot/gateway/pull/334

Done - sent to Hummingbot team for review.


firebase_messaging, I wang to set the icon of notification,what shall I do

I wang to set the icon of notification,what shall I do

Hi @54lianxi
This platform is not meant for assistance on personal code.
Please see https://flutter.dev/community for resources and asking questions like this,
you may also get some help if you post it on Stack Overflow and if you need help with your code, please see https://www.reddit.com/r/flutterhelp/
If you disagree, please write in the comments and I will reopen it.
Thank you"

@54lianxi See this article.


ONNX inference 'depth' parameter

Hi,
Thank you for the help in maintaining the DiffSinger repo.
I have already exported the ONNX model following https://github.com/openvpi/DiffSinger/blob/main/docs/GettingStarted.md#deployment.
I am trying to make inference with the exported ONNX model. I referenced your previous DiffSingerMiniEngine and downloaded all the required dependencies (pitch model, vocoder, etc) and modified the config accordingly.
When I make an API call to localhost:9266/submit, I got below error
2024-03-05 17:31:26 - INFO   : Task '57493d07563b00c43daed67660482bac' begins
<IP_ADDRESS> - - [05/Mar/2024 17:31:26] "POST /submit HTTP/1.1" 200 -
2024-03-05 17:31:26 - WARNING: CUDAExecutionProvider is not available on this machine. Skipping.
2024-03-05 17:31:26 - WARNING: DmlExecutionProvider is not available on this machine. Skipping.
2024-03-05 17:31:29 - ERROR  : Task '57493d07563b00c43daed67660482bac' failed
2024-03-05 17:31:29 - ERROR  : Required inputs (['depth']) are missing from input feed (['tokens', 'durations', 'f0', 'speedup']).

It seems that I need to provide an additional argument of 'depth' in below method:
def acoustic_infer(model: str, providers: list, tokens, durations, f0, speedup):
    session = utils.create_session(model, providers)
    mel = session.run(['mel'], {'tokens': tokens, 'durations': durations, 'f0': f0, 'speedup': speedup})[0]
    return mel

but I am not sure how it should be done. Appreciate any advice on this.

The depth input is introduced by shallow diffusion mechanism, and you can read the documentation for this. Briefly speaking, it equals to K_step in the configuration file for training.

I got another error:
[ONNXRuntimeError] : 2 : INVALID_ARGUMENT : Non-zero status code returned while running Gather node. Name:'/fs2/txt_embed/Gather' Status Message: indices element out of data bounds, idx=50 must be within the inclusive range [-50,49]
Should I use the ONNX model for code deployement (e.g. building an API)? Does it require significant effort to refactor the code given the latest changes?

Seems like your model have a different phoneme set comparing to the default one in MiniEngine. You should use the right dictionary to infer the model.
However, MiniEngine is no longer maintained. If you do not have strong demand on running models in CLI or on remote host, please consider using OpenUTAU for modern user experience. Also I recommend referring the whole inference procedure from it.

I managed to make inference after doing below changes:

Changing the reserved tokens to 2 in the config file:

  filename: assets/dictionaries/dictionary.txt
  reserved_tokens: 2

I understand the reserved tokens mean tokens like  AP and SP that are not in the phoneme dictionary? Is that correct?

Adding the depth parameter in the acoustic_infer method:

def acoustic_infer(model: str, providers: list, tokens, durations, f0, speedup):
    session = utils.create_session(model, providers)
    print(type(tokens))
    print(type(durations))
    print(type(f0))
    print(type(speedup))
    mel = session.run(['mel'], {'tokens': tokens, 'durations': durations, 'f0': f0, 'speedup': speedup, 'depth': np.array(1000)})[0]
    return mel

However, I noticed that there is a significant difference in outputted waveform quality compared to the results I obtained using infer.py in the DiffSinger repo. Would you give some advice on how we might refactor the code in DiffSingerMiniEngine to obtain similar performance in DiffSinger repo?

No, reserved tokens were padding tokens for some historical reasons, and most models nowadays have only 1 reserved tokens. AP and SP are real tokens. You should make sure the phoneme IDs are correct to get reasonable results.

Yes I am using the exact same dictionary as the one used for training.
I just changed the reserved_token to 1, and it can now give the same results and quality as in infer.py.  I guess it is the reserved_token that affected the indices used for phonemes.
Thank you so much for your help!


Update french UI.strings

Update french translation for new feature

@AbelIngrand be careful how you edit these, you have accidentally changed the file encoding from utf16 to utf8.


chore: update zora goerli

Current dependencies on/for this PR:

main

PR #318   👈

This stack of pull requests is managed by Graphite.

Merge activity

Nov 1, 5:27 PM: @oveddan started a stack merge that includes this pull request via Graphite.


Tru64 UNIX

$ /usr/bin/posix/sh pfetch
error: OSF1 is not currently supported.
error: Open an issue for support to be added.
$ uname -a
OSF1 truly V5.0 910 alpha

If you need a logo, see https://github.com/hykilpikonna/hyfetch/pull/218/files.

That logo was a bit big for pfetch, so I made my own based off this photo on the Tru64 UNIX wikipedia
https://en.wikipedia.org/wiki/Tru64_UNIX#/media/File:DigitalUNIX.jpg


Adding USSD and Transfer would be a nice idea, let's track the feature here 👍

Originally, I wanted this package to just accept card payments primarily so that It can appeal to both local and international audience. Now, I am thinking it wouldn't be a bad idea to have these methods right in the package but give the developer option to disable or choose which methods they want in their projects.
So yeah, I am working on it.

the token for the stored card where is it gotten from

@KedwithGod it’s part of the response data gotten from the card payment endpoint when successful. Check flutterwave api docs


AP and web => ATProto: Support custom handle domains for bridged accounts

Suppose I have an ActivityPub account<EMAIL_ADDRESS>that I intend to use to interact with Bluesky users via Bridgy Fed. I gather that if I do nothing in particular, my AT/Bluesky handle will be alice.example.com.ap.brid.gy.
Suppose further that I have administrative control over example.com. I can add DNS records, set up selective resource proxying, etc. What are my options for using a custom domain for the account handle?
Going by the Bluesky documentation on custom domain handles, I should be able to use @example.com as my handle by adding a DNS record containing my DID. Is this the case for accounts bridged by Bridgy Fed as well? I assume that my account's DID will be created automatically by Bridgy Fed whenever I first interact with a Bluesky account through it. Is there a way to find the Bridgy Fed DID corresponding to my AP account early or do I need to wait until Bluesky enables federation?
The Bridgy Fed documentation states that I have the option to use @alice.example.com as my AT/Bluesky handle if I proxy selected /.well-known requests to Bridgy Fed. Are the precise requirements for this process documented anywhere yet?
For either solution: is there a way to test it, or generally see what my bridged AT profile would look like before Bluesky launches federation, or should I just wait?

Thank you for filing! Really great sleuthing and thinking here. You're a bit ahead of me!
I expect/hope to make custom handles like this possible on accounts bridged to Bluesky. I don't know if that will ship on day one of Bluesky support, and it's not my top priority right now, since I can add it and not change those bridged accounts' identities, but if/when it does, it will work largely as you've described.
(The link to the BF docs you mentioned is more developer design doc than user-facing feature documentation, hence including some...that aren't launched here, or even fully implemented or thought through yet, and Green parts have been implemented and running here for years, the rest are still in the early design phase.)
I'm currently prioritizing the fediverse equivalent a bit more because I can't add it after the fact transparently. If someone starts out as<EMAIL_ADDRESS>and then later I change them to<EMAIL_ADDRESS>that's a whole new fediverse actor and account.

The one key issue with custom handles I'm still not sure about is identifying which bridged account for a given domain to use. For example, if someone has a web site on example.com and a native Bluesky account with handle example.com, and they redirect Webfinger to Bridgy Fed, which of those two should it bridge into the<EMAIL_ADDRESS>fediverse account?
Fortunately, this isn't a problem for all networks. For Bluesky, each bridged account would have a different DID, and if you validate your handle with DNS, you'd put the DID you want in the DNS record. It might still be a problem if I let people redirect /.well-known/atproto to BF and have it do the HTTPS handle validation, but I haven't gotten that far into the design yet.

Thank you for the clarification! Sounds like for now all I need to do is wait. 🙂 My understanding of AT is very superficial, so I'm glad to hear I was on the right track.

For example, if someone has a web site on example.com and a native Bluesky account with handle example.com, and they redirect Webfinger to Bridgy Fed, which of those two should it bridge into the<EMAIL_ADDRESS>fediverse account?

That's a good question, especially given that people with only a website or only a Bluesky account with a custom domain handle might add the other one at any later date. Off the top of my head, I can't think of a better solution than picking an arbitrary priority and giving the second account in line a suffix.

Related: #821

Following up on this with a closely related scenario (originally posed in a Bluesky post).
I currently control:

<EMAIL_ADDRESS>(personal Mastodon instance)
@elfprince13.mumak.app (ATproto/Bluesky account)

Even a single-user Mastodon instance does not run particularly well on a small AWS instance, and it requires more attention than I want to allocate for it to constantly switch apps for posting, so I have been thinking of sunsetting the Mastodon account in favor of the Bluesky account; however, I would like to:

retain my existing Mastodon followers if at all possible.
continue using<EMAIL_ADDRESS>for my handle, rather than the clunkier<EMAIL_ADDRESS>which the current domain redirect support appears to require.

Thanks @elfprince13! Sounds like you're hoping for this issue (custom domain handles for Bluesky bridged accounts), plus custom ActivityPub usernames (already supported for web sites), plus #330.

Taking the liberty to rewrite this issue's title to clarify that I'm talking about ActivityPub accounts bridged into ATproto. I don't know to what extent @snarfed will want to work on custom handles for both directions at the same time, but the AT => AP use case might warrant a separate issue.

Thanks @jfietkau! Yeah Bluesky => AP is https://github.com/snarfed/bridgy-fed/issues/1150.

Yes sorry - my brain was apparently in mirror world when reading this
thread first time through.
~Thomas

I personally am interested in this
I have a AP account<EMAIL_ADDRESS>and a AT twitchtrot.horse and I want to migrate twitchtrot.horse into a mirror of<EMAIL_ADDRESS>while keeping all the followers and the handle
Will that be possible at some point?

@Fauli1221 it's a great idea! We've discussed it in eg https://github.com/snarfed/bridgy-fed/issues/330#issuecomment-2176216675 . It's arguably outside Bridgy Fed's scope, but it could be a good idea for a new service that uses a lot of BF's (and its libraries') guts under the hood, since it's all open source.

I would really love to see this implemented. I'm also wondering if this will require having control over the fediverse server in question, e.g., my own solo Mastodon instance or my WP blog or would it be possible for any Fediverse account? I already have a custom AP domain setup but never use my bsky account. I would love to turn that handle into just a proxy for my Fediverse account.

@thomasjwebb you probably won't need to own your fediverse server. I expect all you'll need is DNS control over the domain you want to use as your Bluesky handle.

One question here is how a fediverse user would tell Bridgy Fed the domain they want to use for their Bluesky handle.
One option is a link in their fediverse profile. Another option is a DM.

I think a command system using dm's would be great in general and could be used for other things as well

Please have mercy on my profile link list. Since Mastodon limits them to four by default, I have none to spare. 😮
Yes, a DM would make intuitive sense to me as well. Assuming you're not eager to build a web UI, it's the only good channel I can think of.
Thinking out loud: Maybe when an AP user newly follows the bridge, you could check their AP domain for an ATproto DNS entry automatically. This might be a convenient process for single-person servers like mine. We have to add our BridgyFed DID to the DNS record, right? So there'd be no danger of impersonation. Then again, even if you do that, you'd also still need a process that can be triggered later for when people change their mind or learn of the possibility only after following.

There'd likely still need to be a bit of authorisation in DNS or /.well-known/… to specify which AP account is allowed to take the handle, but checking that automatically (maybe also for user.domain subdomains) would be interesting for instance-opted-in places that can set that up automatically, too.

Yup, all of these "claim a domain/username" flows have to be bidirectional. Fortunately for Bluesky handles, that's already specified by ATProto, you have to put your DID into an _atproto.[domain] DNS TXT record.

Having a DM command system would solve other problems too. Like having another way to stop the bridging other than blocking the bridge, which seems kinda clumsy and drastic to me.

Yes! That's already supported, you can DM no to the bridge account to disable it. We just don't document that as loudly as blocking it.

Ah nice! Yeah I just didn't know that, so the DM command mechanism is already there.

Yes! That's already supported, you can DM no to the bridge account to disable it. We just don't document that as loudly as blocking it.

instead of just saying no I would recommend making it so that the commands are something like this
!stopbridge
!getdid
!setdomain
!invite
with that it makes it more clear what is a command and then having the bot always reply giving you the feedback where you know it worked

Hah, yes! I deliberately haven't documented or wordsmithed the perfect command name(s) for DMing the bridge, beyond the current (mostly undocumented) yes to enable it and no to disable it, because there's a lot of UX value in officially having just one way to do things, not multiple.

One option is a link in their fediverse profile.

That'd be fine my me. I already have the verified domain in my Mastodon profile.

I deliberately haven't documented or wordsmithed the perfect command name(s) for DMing the bridge,

Maybe DMing help or ? to the bridge could make the bridge reply with a list of currently availabel commands, and then help CMD would make it reply with a help message for that command?
Would be quite useful and would make it so that you don't need to document it somewhere else / maintain stability.

@xne good question! This issue is fine for now, I've updated the title.

how is the plan on configuring this?

how will I get my did
what verification's will be supported
how will I tell the bot to change it

* how will I get my did

You can look up your Bridgy Fed DID on your bridged profile, it's in the page source code. Ctrl+U, Ctrl+F, "did:plc"
I put mine into my domain's DNS record as described in the Bluesky docs in anticipation of this eventual feature. 🤫

* how will I get my did

You can look up your Bridgy Fed DID on your bridged profile, it's in the page source code. Ctrl+U, Ctrl+F, "did:plc"
I put mine into my domain's DNS record as described in the Bluesky docs in anticipation of this eventual feature. 🤫

Since each DID is public, it can likely be added right onto each user page at fed.brid.gy?
For verification, can we lean on Bluesky's DNS requirement that's already in place? Then we would only need to prompt the bot to attempt the change.

Right! All of this is on the right track. For fediverse users, to set your bridged Bluesky handle to example.com, the current plan is:

you get your DID from your fed.brid.gy user page or a service like https://internect.info/
you either add it to the _atproto.example.com DNS record, or serve it at https://example.com/.well-known/atproto-did, as described in https://bsky.social/about/blog/4-28-2023-domain-handle-tutorial
you DM @bsky.brid.gy the text username example.com
Bridgy Fed updates the handle in your DID doc to example.com and emits an #identity event to notify the appview of the handle change

For web users, the only difference would be, instead of DMing, you'd click the 🔁 button on your fed.brid.gy user page.

This is exciting. As soon as this is working, I'm deleting my account on bsky.app and moving that domain handle to the relay for my masto account. I'm not sure how that affects my existing bluesky followers, but I'm guessing I'd keep my followers but lose my following (and won't be able to refollow unless they followed the relay).

You'd lose your followers. ATProto followers are attached to the did, not the handle.

Late addendum: To keep followers when moving from a native account to a bridge one, #1137 is necessary.
However, if you are already bridging then that would lose the followers of the previous bridge account (because followers can't be moved automatically between dids on ATProto).

I'm honestly personally fine with losing both followers and follows. I practically never used my bluesky account and this story being implemented is all the excuse I need to finally delete it.

Lol, now I know how the Bluesky team feels, I haven't fully shipped this but people are front running it already. Nice work @karcsesz https://bsky.app/profile/karcsesz.hu , watch out for rough edges 😎

We've been detected! Abort! Abort!
All kidding aside, seems to be working fine minus a small visual bug:

it replies with the old username when it has actually successfully configured the new one
Will keep an eye out for gremlins to report ^^

The stuff on Hooves was me. my experience was basically same as @karcsesz reported
Some visual oddities besides that everything worked well
Thanks for the amazing work and I hope you have fun polishing the feature ^^

I have joined the ranks as well. Gonna leave it to @snarfed to decide when to consider this issue resolved, but I'm satisfied. 🙂

Woohoo! Working for me too (with same issue noted by others).

nice, got it working with my own domain :3
one thing i’ll note, the bot kept responding with instructions to set up my did and did not move my handle to my domain, despite me having my did set up in the .well-known/atproto-did. However, once I’d set up the DNS record instead, it worked then.

@RoblKyogre hmm! https://roblkyogre.craftingcomrades.net/.well-known/atproto-did , right? That currently serves Content-Type: application/octet-stream. It needs to be Content-Type: text-plain instead. https://atproto.com/specs/handle#handle-resolution

@RoblKyogre hmm! https://roblkyogre.craftingcomrades.net/.well-known/atproto-did , right? That currently serves Content-Type: application/octet-stream. It needs to be Content-Type: text-plain instead. https://atproto.com/specs/handle#handle-resolution

ahhh thanks for pointing that out, did not think to check that! Incidentally, before I did the DNS method, the handle debug listed the HTTP method as valid, and I saw that going to my profile would indeed go to the bridged profile, so not sure bluesky is doing type checking on that file. :p

Incidentally, before I did the DNS method, the handle debug listed the HTTP method as valid, and I saw that going to my profile would indeed go to the bridged profile, so not sure bluesky is doing type checking on that file. :p

Thanks for the nudge! https://bsky-debug.app/ isn't really an official tool, but looks like you're right regardless. From https://atproto.com/specs/handle#handle-resolution :

The response Content-Type header does not need to be strictly verified.

...and sure enough, the appview validates handles with the HTTPS method without Content-Type: text/plain. OK! I'll remove that check here too.

OK everyone! Docs are up, DM text is finalized, I think this is good to go, at least as a beta. Feel free to try! https://fed.brid.gy/docs#bluesky-enhanced (shift-refresh if you don't see the new docs yet)
Also, the bot accounts now have a more complete DM interface, including an honest to god help command. Feel free to try it! https://fed.brid.gy/docs#dm-commands

There's quite a bit of delay, but help seems to work.
Two observations from Bluesky:

The message contains _ _ formatting, I assume because it's supposed to be in italics on fedi.
* _username [domain]_ : set a custom domain username (handle) doesn't seem like it should appear on the Bluesky side.

Hi! I'm a friendly bot that can help you bridge your account into the fediverse. Here are some commands I respond to:

  * _start_ : enable bridging for your account
  * _stop_ : disable bridging for your account
  * _username [domain]_ : set a custom domain username (handle)
  * _[handle]_ : ask me to DM a user on the fediverse to request that they bridge their account into Bluesky
  * _help_ : print this message

I think instead of [handle] it would be better to write [<EMAIL_ADDRESS>in the ap.-account's help, since Bluesky users won't necessarily be familiar with the fediverse handle format.
Similarly, the bsky.-bot should probably use an example like<EMAIL_ADDRESS>

Thanks! You're right, the help text from @ap.brid.gy on the Bluesky side right now is indeed a bit half baked, both formatting and text. I do plan to support custom handles in that direction soon, #1150. And protocol-specific example handles are a great idea!
The delay is inherent, sadly, there's currently no way to listen for Bluesky DMs in real time, I have to poll. I currently do that every 60s.

Is it possible to send a notification when it successfully changes the username? I thought I had misconfigured something w/ one of my accounts on my end til I checked bluesky this morning haha
Also, I know bridgy automatically converts '_' to '-', is that a restriction because of how AT resolves the username or something in Bridgy? And if it's because of AT, can that be added to an error message to users attempting to set their username with an underscore? it completely slipped my mind this morning and wasn't immediately clear based on the default error message what the real issue was.

so when you get the reply, BF has already done everything it's going to do

Sorry, I meant I didn't get any reply when I sent the username message and everything was already configured correctly. So I don't need a message when it changes on bluesky's end, just when it didn't run into any issues converting the name.

Marking complete! 🎉

Sorry, I meant I didn't get any reply when I sent the username message and everything was already configured correctly.

Ah! Good point, we don't send a reply in that case now, but we definitely could.


Update configuration.md

if you want find entity in entities, discovery.requireEntitiesArray config is required.
I spent an hour to find out why I have set the entites but the mikro-rom still requires the file, hope this can save time for others

what do you mean? there are 2 ways you can define entities, by folders (entitiesDirs option) or by reference (entities option). requireEntitiesArray is just about forcing you to use entities variant (which is in some cases required, like when you bundle via webpack).

ouch, that is not a docs issue, its a bug. closing this now, will create new issue for this so you can subscribe to it.

here it is: https://github.com/mikro-orm/mikro-orm/issues/293

Thanks for your quickly reply, I have subscribed that issue


Add graceful shutdown to HTTP server

While troubleshooting #177, I noticed that graceful shutdown was missing for the HTTP server, making KMinion to hang on interrupt signals, e.g. Ctrl-c, instead of shutting down properly. For example:
# When using Ctrl-c _before_ the HTTP server is started, KMinion shutdowns cleanly
(...)
{"level":"info","ts":"2022-12-13T10:00:49.245Z","logger":"main","msg":"successfully connected to kafka cluster"}
<Ctrl-c>
{"level":"info","ts":"2022-12-13T10:00:49.940Z","logger":"main","msg":"received a signal, going to shut down KMinion"}
{"level":"fatal","ts":"2022-12-13T10:00:50.179Z","logger":"main","msg":"failed to start minion service","error":"failed to check feature compatibility against Kafka: kafka api versions couldn't be fetched: failed to request api versions: context canceled"}

# KMinion exits and returns control to the console

# When using Ctrl-c _after_ the HTTP server is started, KMinion never shutdowns and just hangs
(...)
{"level":"info","ts":"2022-12-13T10:01:13.735Z","logger":"main","msg":"listening on address","listen_address":":8080"}
<Ctrl-c>
{"level":"info","ts":"2022-12-13T10:01:14.410Z","logger":"main","msg":"received a signal, going to shut down KMinion"}

# KMinion never exits from this point and control never returns to the console

This PR fixes the above by properly implementing HTTP server shutdown when the context is cancelled.

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


Using two jetpacks makes you sparkle

Description

as in when you use two jetpacks and go on a grid, the jetpack effect from one of the jets never goes away
(and the jetpack doesn't go back to looking like it's turned off but that's less funny)
Reproduction

1: Use jet
2: Use different jet
log2(8): Go on land
ceil(pi): Sparkly little shithead syndrome
Screenshots

Additional context

This is actually so sad

This is actually so sad

Alexa, play Atomic Amnesia


Not running with node >19

node v18.20.2:
ajv not up to date: [ current: ^8.17.0 | latest: 8.17.1]

node v19.0.0:
ajv not up to date: [ current: ^8.17.0 | latest: 8.17.1]

node v20.18.0:
Cannot read properties of undefined (reading 'ajv')

node v22.8.0:
Cannot read properties of undefined (reading 'ajv')
(node:40618) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.

I tried it and ndc runs fine in the node environment you listed. Can you provide more information, such as ndc version, run command, package.json and lockfile? Thanks for your feedback.

Strange. Now it doesn't even work under node 18 :thinking:
# system information
$ uname -a
Linux debian 5.10.0-20-amd64 #1 SMP Debian 5.10.158-2 (2022-12-13) x86_64 GNU/Linux

# distribution information
$ cat /etc/*-release
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
...

# node version
$ node -v
v22.8.0

# install ndc globally
$ npm install -g npm-deprecated-check
npm warn deprecated<EMAIL_ADDRESS>This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm warn deprecated<EMAIL_ADDRESS>Rimraf versions prior to v4 are no longer supported
npm warn deprecated<EMAIL_ADDRESS>Glob versions prior to v9 are no longer supported

changed 91 packages in 2s

21 packages are looking for funding
  run `npm fund` for details

# ndv version
$ ndc -V
npm-deprecated-check 1.0.2

# minimal package.json
$ cat package.json
{
  "name": "ndc-test",
  "version": "1.0.0",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "description": "",
  "dependencies": {
    "ajv": "^8.17.1"
  }
}

# check fails
$ ndc current
Cannot read properties of undefined (reading 'ajv')
(node:8964) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)

# install ndc in the project locally
$ npm install npm-deprecated-check
npm warn deprecated<EMAIL_ADDRESS>This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm warn deprecated<EMAIL_ADDRESS>Rimraf versions prior to v4 are no longer supported
npm warn deprecated<EMAIL_ADDRESS>Glob versions prior to v9 are no longer supported

added 91 packages, and audited 97 packages in 7s

22 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities

# run ndc locally -> check fails
$ npx ndc current
Cannot read properties of undefined (reading 'ajv')
(node:9150) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)

# switch to node 18
$ nvm use 18
Now using node v18.20.2 (npm v10.5.0)

# install ndc globally
$ npm install -g npm-deprecated-check
npm WARN deprecated<EMAIL_ADDRESS>This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm WARN deprecated<EMAIL_ADDRESS>Rimraf versions prior to v4 are no longer supported
npm WARN deprecated<EMAIL_ADDRESS>Glob versions prior to v9 are no longer supported

added 91 packages in 8s

21 packages are looking for funding
  run `npm fund` for details

# check fails
$ ndc current
Cannot read properties of undefined (reading 'ajv')

# install ndc locally
$ npm install npm-deprecated-check

up to date, audited 97 packages in 1s

22 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities

# run ndc locally -> check fails
$ npx ndc current
Cannot read properties of undefined (reading 'ajv')

Just checked on a windows system with node 20. Same problem: Cannot read properties of undefined (reading ....

What about ndc package ajv?

Tested on the debian system -> Just short ⠋ Checking then nothing:
$ nvm use 18
Now using node v18.20.2 (npm v10.5.0)
$ ndc package avj
$

$ nvm use 20
Now using node v20.18.0 (npm v10.8.2)
$ ndc package avj
$

$ nvm use 22
Now using node v22.8.0 (npm v10.8.2)
$ ndc package avj
⠋ Checking(node:9345) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
$


Add document_alias()

If this is added, then docaliases_from_name() might want to change to document_aliases(name=)?

Done - one day I'll run the tests before committing..


Small Update

This solves:

[X] #387
[X] #386

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


Loop in pipx installation in Tencent Cloud Ubuntu 22.04 VM

Describe the bug
Installation script stuck in pipx installation loop and failed at last.
Steps to reproduce

Create a Tencent cloud spot instance VM with 1 T4 GPU and choose Ubuntu 22.04.
After Nvidia driver installation, run

Result
Loop in pipx installation and failed at last. Detailed logs as below
ubuntu@VM-0-7-ubuntu:~$ curl -sfL https://get.gpustack.ai | sh -s -
[INFO]  running as non-root, will use sudo for installation.
[INFO]  Pipx could not be found. Attempting to install...
Defaulting to user installation because normal site-packages is not writeable
Looking in indexes: http://mirrors.tencentyun.com/pypi/simple
Requirement already satisfied: pipx in ./.local/lib/python3.10/site-packages (1.7.1)
Requirement already satisfied: packaging>=20 in ./.local/lib/python3.10/site-packages (from pipx) (24.2)
Requirement already satisfied: tomli in ./.local/lib/python3.10/site-packages (from pipx) (2.2.1)
Requirement already satisfied: userpath!=1.9,>=1.6 in ./.local/lib/python3.10/site-packages (from pipx) (1.9.2)
Requirement already satisfied: argcomplete>=1.9.4 in ./.local/lib/python3.10/site-packages (from pipx) (3.5.2)
Requirement already satisfied: platformdirs>=2.1 in ./.local/lib/python3.10/site-packages (from pipx) (4.3.6)
Requirement already satisfied: click in /usr/lib/python3/dist-packages (from userpath!=1.9,>=1.6->pipx) (8.0.3)
[INFO]  Pipx could not be found. Attempting to install...
Defaulting to user installation because normal site-packages is not writeable
Looking in indexes: http://mirrors.tencentyun.com/pypi/simple
Requirement already satisfied: pipx in ./.local/lib/python3.10/site-packages (1.7.1)
Requirement already satisfied: tomli in ./.local/lib/python3.10/site-packages (from pipx) (2.2.1)
Requirement already satisfied: platformdirs>=2.1 in ./.local/lib/python3.10/site-packages (from pipx) (4.3.6)
Requirement already satisfied: argcomplete>=1.9.4 in ./.local/lib/python3.10/site-packages (from pipx) (3.5.2)
Requirement already satisfied: userpath!=1.9,>=1.6 in ./.local/lib/python3.10/site-packages (from pipx) (1.9.2)
Requirement already satisfied: packaging>=20 in ./.local/lib/python3.10/site-packages (from pipx) (24.2)
Requirement already satisfied: click in /usr/lib/python3/dist-packages (from userpath!=1.9,>=1.6->pipx) (8.0.3)
[INFO]  Pipx could not be found. Attempting to install...
Defaulting to user installation because normal site-packages is not writeable
Looking in indexes: http://mirrors.tencentyun.com/pypi/simple
Requirement already satisfied: pipx in ./.local/lib/python3.10/site-packages (1.7.1)
Requirement already satisfied: packaging>=20 in ./.local/lib/python3.10/site-packages (from pipx) (24.2)
Requirement already satisfied: argcomplete>=1.9.4 in ./.local/lib/python3.10/site-packages (from pipx) (3.5.2)
Requirement already satisfied: tomli in ./.local/lib/python3.10/site-packages (from pipx) (2.2.1)
Requirement already satisfied: userpath!=1.9,>=1.6 in ./.local/lib/python3.10/site-packages (from pipx) (1.9.2)
Requirement already satisfied: platformdirs>=2.1 in ./.local/lib/python3.10/site-packages (from pipx) (4.3.6)
Requirement already satisfied: click in /usr/lib/python3/dist-packages (from userpath!=1.9,>=1.6->pipx) (8.0.3)
[INFO]  Pipx could not be found. Attempting to install...
Defaulting to user installation because normal site-packages is not writeable
Looking in indexes: http://mirrors.tencentyun.com/pypi/simple
Requirement already satisfied: pipx in ./.local/lib/python3.10/site-packages (1.7.1)
Requirement already satisfied: tomli in ./.local/lib/python3.10/site-packages (from pipx) (2.2.1)
Requirement already satisfied: userpath!=1.9,>=1.6 in ./.local/lib/python3.10/site-packages (from pipx) (1.9.2)
Requirement already satisfied: packaging>=20 in ./.local/lib/python3.10/site-packages (from pipx) (24.2)
Requirement already satisfied: argcomplete>=1.9.4 in ./.local/lib/python3.10/site-packages (from pipx) (3.5.2)
Requirement already satisfied: platformdirs>=2.1 in ./.local/lib/python3.10/site-packages (from pipx) (4.3.6)
Requirement already satisfied: click in /usr/lib/python3/dist-packages (from userpath!=1.9,>=1.6->pipx) (8.0.3)
......
[INFO]  Pipx could not be found. Attempting to install...
Defaulting to user installation because normal site-packages is not writeable
Looking in indexes: http://mirrors.tencentyun.com/pypi/simple
Requirement already satisfied: pipx in ./.local/lib/python3.10/site-packages (1.7.1)
Requirement already satisfied: userpath!=1.9,>=1.6 in ./.local/lib/python3.10/site-packages (from pipx) (1.9.2)
Requirement already satisfied: packaging>=20 in ./.local/lib/python3.10/site-packages (from pipx) (24.2)
Requirement already satisfied: tomli in ./.local/lib/python3.10/site-packages (from pipx) (2.2.1)
Requirement already satisfied: platformdirs>=2.1 in ./.local/lib/python3.10/site-packages (from pipx) (4.3.6)
Requirement already satisfied: argcomplete>=1.9.4 in ./.local/lib/python3.10/site-packages (from pipx) (3.5.2)
Requirement already satisfied: click in /usr/lib/python3/dist-packages (from userpath!=1.9,>=1.6->pipx) (8.0.3)
sh: 232: Maximum function recursion depth (1000) reached

GPUStack version: latest installation script
OS: Ubuntu 22.04 in Tencent Cloud

More information from the VM
ubuntu@VM-0-7-ubuntu:~$ python3 -V
Python 3.10.12
ubuntu@VM-0-7-ubuntu:~$ python3 pip install pipx
python3: can't open file '/home/ubuntu/pip': [Errno 2] No such file or directory
ubuntu@VM-0-7-ubuntu:~$ python pip install pipx
Command 'python' not found, did you mean:
  command 'python3' from deb python3
  command 'python' from deb python-is-python3
ubuntu@VM-0-7-ubuntu:~$ python3 pip install pipx
python3: can't open file '/home/ubuntu/pip': [Errno 2] No such file or directory
ubuntu@VM-0-7-ubuntu:~$ sudo python3 pip install pipx
python3: can't open file '/home/ubuntu/pip': [Errno 2] No such file or directory

It works after reboot the VM


Analyzer does not pick up on anonymous type from ConsumeContext Send extension

Is this a bug report?
Yes
Can you also reproduce the problem with the latest version?
Yes, I'm using MassTransit 8.0.3
Environment

Dotnet version: net6.0
Operating system: Windows
IDE: Rider

Steps to Reproduce

Create message interface

public interface IMyMessage {
    int Value { get; }
}

Create a consumer

public class MyConsumer : IConsumer<IMyMessage> {
    public async Task Consume(ConsumeContext<IMyMessage> context) {
        await context.Send<IMyMessage>(new("queue:message"), new { });
    }
}

Visually or when hovering over "new {}" does not show any issue.

Adding:
await context.Publish<IMyMessage>(new { });

or
await (await context.GetSendEndpoint(new("queue:message"))).Send<IMyMessage>(new { });

Those two would show the correct suggestion.
Expected Behavior
I would've expected to see the same warnings from IPublishEndpoint or ISendEndpoint.
Actual Behavior

Reproducible Demo
Any project with MassTransit 8.0.3 and MassTransit.Analyzers 8.0.3 should be able to detect this and the code below.
public interface IMyMessage {
    int Value { get; }
}

public class MyConsumer : IConsumer<IMyMessage> {
    public async Task Consume(ConsumeContext<IMyMessage> context) {
        await context.Send<IMyMessage>(new("queue:message"), new { });
        await context.Publish<IMyMessage>(new { });
        await (await context.GetSendEndpoint(new("queue:message"))).Send<IMyMessage>(new { });
    }
}

It's likely the analyzer doesn't see the extension methods, since it has a limited list of types that it inspects.

Is it possible to add support for the extension methods? I have no clue how the code analyzers work.

Should be easy enough it's a finite list that just needs to be updated.


Compatibility

Processor Compatibility
Hi there, I have a 7" Linx Tablet that runs on an Intel Atom Processor. I'm running Windows 10.
I have a bluetooth button controller that I want to map keys to Windows with, so I can control winamp etc, so want to use PowerToys.
Which version of powertoys supports my processor? Every version I've tried so far fails to install or run due to the CPU.
Is there a compatibility list somewhere of the version numbers? How can I tell which version supports which processor, e.g. x64 x32 x86 etc... that would help.

Can you start up "System Information" Look at "System Type" and what the Version of Windows is.
Is it x64 or x86?
Our readme does directly call out min version of Windows as well. https://github.com/microsoft/PowerToys#requirements
As of posting this,: Windows 11 or Windows 10 version 2004 (code name 20H1 / build number 19041) or newer.
/needinfo

Hi thanks.
Its a Linx Windows 10 Tablet
Processor is Intel Atom CPU Z3735F @ 1.33GHz
O.S. 32 bit operating system, x64 based processor
Windows 10 Home
Version 2004
Build 19041.1

this is called out in https://learn.microsoft.com/en-us/windows/powertoys/install#requirements and i just opened up a new PR to call out x64 and ARM64


[Docs]Add Meshery v0.3.12 to docs page

@Saim-Safdar, we're in need of automating this through workflow. See @shivaylamba for a vision of how we might publish release notes going forward.


License

Please include a software license: MIT, GNU, APACHE, etc.
Thanks :)

I've added the MIT license.


Support for project feature flags

It seems like gitlab feature flags are supported but not the project feature flags: https://docs.gitlab.com/ee/api/feature_flags.html.
These would be very useful, am I missing them or are they not supported yet? In that case I could open a pull request if it will be accepted.

PRs are accepted and welcome! Please do look at the existing code and use the same logic and style! Thanks...

This one is already solved by #1528


discovery: return only best matching templates.

Actually the spec doesn't clarify when an endpoint template should be accepted or
not. Now, the appc/spec implementation returns only endpoints that can
be fully rendered. This means that it will also accept a template if it
doesn't contain some of the required discovery labels.
This looks good, but, trying to implement some meta discovery ideas it
will bring to unwanted endpoints.
Example 1:
Suppose I want to implement the "latest" pattern behavior:
<!-- ACIs with specific version -->
<meta name="ac-discovery" content="example.com https://storage.example.com/{name}-{version}-{os}-{arch}.{ext}">
<!-- Latest ACIs -->
<meta name="ac-discovery" content="example.com https://storage.example.com/{name}-latest-{os}-{arch}.{ext}">

If, on discovery, I ask for the name, os and arch
labels only the second template will be rendered (since the first cannot
be fully rendered due to missing version label). So I achieved latest
pattern.
But if I'm asking for a specific version both templates will be
rendered.
Example 2:
As an extension of the first example, suppose I want to create a global
meta discovery for all my images on example.com. So on the root of my
server I'll put some meta tags using example.com as prefix:
<!-- ACIs with specific version -->
<meta name="ac-discovery" content="example.com https://storage.example.com/{name}-{version}-{os}-{arch}.{ext}">
<meta name="ac-discovery" content="example.com https://mirror.storage.example.com/{name}-{version}-{os}-{arch}.{ext}">
<!-- noarch ACIs -->
<meta name="ac-discovery" content="example.com https://storage.example.com/{name}-{version}-noarch.{ext}">
<meta name="ac-discovery" content="example.com https://mirror.storage.example.com/{name}-{version}-noarch.{ext}">
<!-- Latest ACIs -->
<meta name="ac-discovery" content="example.com https://storage.example.com/{name}-latest-{os}-{arch}.{ext}">
<meta name="ac-discovery" content="example.com https://mirror.storage.example.com/{name}-latest-{os}-{arch}.{ext}">
<!-- Latest noarch ACIs -->
<meta name="ac-discovery" content="example.com https://storage.example.com/{name}-latest-noarch.{ext}">
<meta name="ac-discovery" content="example.com https://mirror.storage.example.com/{name}-latest-noarch.{ext}">

With this tags I want to implement global "latest" and "noarch" patterns
and also return multiple mirrors.
If, on discovery, I ask only for the name and version labels the
template 3 and 4 will be rendered. So I achieved a versioned noarch pattern.
But, unfortunately, also the last two templates will be rendered.
And, as the first example, if I'm asking for a specific name,
version, os and arch ALL the templates will be rendered.
Since the spec says:
Note that multiple `ac-discovery` tags MAY be returned for a given
prefix-match [snip] In this case, the client implementation MAY choose
which to use at its own discretion.

If an implementation chooses the second it can download the wrong image version.
This patch makes template matching stricter choosing only best matching templates.
Best matching templates are the one where all the templates labels can
be substituted and with the highest number of substituted labels.
With this we can obtain various patterns like latest and noarch and also
keeping the ability to return multiple mirror urls. See also the tests
added in this commit.
It also documents this behavior.
It should not BREAK many of the current meta tags implementation (it
depends on how the client uses the returned endpoints, for example rkt,
currently, only uses the first one)
This is also needed to implement #575 second proposal (remove the "hidden" behavior that sets a version label to "latest" if not provided)

Great write-up :clap:. I mostly agree with your diagnosis and suggestion, just added a few comments on the details.

@jonboulle Thanks.
I'm on the fence between:

All client supplied labels must be substituted (like #580)
Best matching: only return templates with the greater number of substituted client labels (this PR)

IMHO the former is stricter and better (since it'll fails discovery if a template doesn't contains some client provided labels) but I've the fear that it'll break some current implementations (perhaps this is a pointless fear).
I open to change it back to #580 behavior (changing this PR since it provides more tests) if you are ok.

@sgotti If we were to expand the meta tag format slightly, I think it would be possible to maintain flexibility without introducing the ambiguity that comes from not requiring full substitution. Consider:
<meta name="ac-discovery" content="example.com https://storage.example.com/{name}/{version}/{arch}/{name}.{ext}" arch="noarch" version="latest">

We could supply optional default values for missing variables. This allows for #580 (which I agree is better than a "best match" which could easily result in invalid URLs) while also avoiding the need to maintain many different tags to cover all the permutations.
Additionally, while I agree in principle that all client supplied labels should be substituted, there's no way to know from the tag what those variables are (without implementing the RFC and parsing the URL). Another useful extension would be:
<meta ... requires="foo,bar,baz">

Where the required fields would just be ones present and without default values. Taken together, here's Example 2 above:
<meta name="ac-discovery" content="example.com https://storage.example.com/{name}-{version}-{os}-{arch}.{ext}" version="latest" os="any" requires="name">
<meta name="ac-discovery" content="example.com https://storage.example.com/{name}-{version}-{os}-{arch}.{ext}" version="latest" os="any" requires="name">

This reduces the eight required tags to two, plus gives you OS-independent permutations. It also allows the client to quickly find usable URLs just by checking the requires attribute against available labels. This also shouldn't affect existing implementations at all. Thoughts?


Display request headers sorted

As request headers are implemented as a map, the order of the keys are not guaranteed.
It would be nice to display all the request header sorted alphabetically, so that is easy to identify changes from one request to the other

It seems this is referring to to the DumpRequest function -- is that correct?

Yes. that is correct @j-haj
it dumps the headers in alphabetical order (by keys)

Alright I think I have a patch that should add this. Test appear to be passing, will submit a PR later today.

Excellent!!
On Sep 28, 2017 5:49 PM, "Jeff Hajewski"<EMAIL_ADDRESS>wrote:

Alright I think I have a patch that should add this. Test appear to be
passing, will submit a PR later today.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/gchaincl/httplab/issues/47#issuecomment-332879601,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABOoefC-YKrksPjw0x02pkqpILVk2ucwks5sm7_4gaJpZM4Pm4p8
.

Closed by #48


Collaborate

kube.tf would definitely be willing to collaborate on this. Once you provide some documentation in the Readme for Kubeform, let us know and we'll check it out.

@mward29 made a start on that here https://github.com/Capgemini/kubeform/pull/90/files


nixUnstable: 2.4pre20210601_5985b8b -> 2.4pre20210707_02dd6bb

Motivation for this change
Includes https://github.com/NixOS/nix/pull/4944, which fixes a long standing GC issue.
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
[ ] macOS
[ ] 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/)
21.11 Release Notes (or backporting 21.05 Relase notes)

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

[ ] Fits CONTRIBUTING.md.

https://github.com/NixOS/nixpkgs/pull/129574

4 packages built:
hydra-unstable nix-review nix-update nixFlakes

I've built this and it reports a correct version (so it runs as well):
./result/bin/nix --version
nix (Nix) 2.4pre20210707_02dd6bb

diff LGTM.

I've added a commit to patch boehmgc, like https://github.com/NixOS/nix/pull/4944 does. That patch is an essential part of the current gc solution.

rebuilt system, and it seems to be working fine

This fixes evaluating a Nixos configuration that has been crashing for me with nix-build recently.

Please wait with merging. On this version of Nix I'm currently dealing with some weird messages like error: ca hash mismatch importing path '/nix/store/hvwszfxaaj4r07yki6plhyfvccs5khpf-childprocess-4.1.0.gem'; for derivations that build perfectly fine with Nix 2.3 (on the client & daemon side).
Investigation will (hopefully) follow tomorrow.

Please wait with merging. On this version of Nix I'm currently dealing with some weird messages like error: ca hash mismatch importing path '/nix/store/hvwszfxaaj4r07yki6plhyfvccs5khpf-childprocess-4.1.0.gem'; for derivations that build perfectly fine with Nix 2.3 (on the client & daemon side).
Investigation will (hopefully) follow tomorrow.

I don't use any ca-references, so I can't speak to those features

Result of nixpkgs-review pr 129574 at 51d480aa run on x86_64-linux 1

6 packages built successfully:

boehmgc_nix
boehmgc_nixUnstable
hydra-unstable
nix-update
nixUnstable
nixpkgs-review

2 suggestions:

warning: unused-argument
Unused argument: fetchpatch.
Near pkgs/tools/package-management/nix/default.nix:1:35:
  |
1 | { lib, fetchurl, fetchFromGitHub, fetchpatch, callPackage
  |                                   ^

warning: missing-patch-comment
Consider adding a comment explaining the purpose of this patch on the line preceeding.
Near pkgs/tools/package-management/nix/default.nix:73:17:
   |
73 |                 ./aws-sdk-cpp-TransferManager-ContentEncoding.patch
   |                 ^

I don't use any ca-references, so I can't speak to those features

Now that you say it, I only have experimental-features = nix-command flakes in my nix.conf. Apart from that, the hashmismatch appeared because bundix gave me a hash that caused problems a few minutes later while running nix build. Since one of our selling points is that we can trivially instantiate & realize older Nix expressions (and this doesn't seem to be the case under all circumstances anymore), this has to be cleared up IMHO.
It currently seems as reverting https://github.com/NixOS/nix/pull/4849 on my local Nix checkout fixes the problem, so I'll file a report there later today.

Update: this issue seems to only occur when having multiple stores (e.g. on multiple machines for remote-building). A workaround for the issue is nix --option builders ''. I'd personally prefer to still wait until it's clear what's causing this, but if others prefer to merge this now to get the GC fix into master, I'm fine with it as well.

I'll have my server up and running later today (hopefully), should be able to verify status of remote builds

testing...

Could https://github.com/NixOS/nix/pull/4995 be included?

I was able to run a few reviews using my server as a remote, and it worked fine....

I rebased this, as it was getting stale

Should we backport this? :)

This seems to have caused https://github.com/NixOS/nix/issues/5044


Split registration

It is leveraging the new EiriniX feature to split registration/startup. This gives us the possibility to lower runtime permissions

@jimmykarily I'm merging this one too as It's similar to https://github.com/SUSE/eirini-ssh/pull/3. It's changing CLI runtime parameters so they look more uniform where we already paired and reviewed this together.
The internal change was already merged in EiriniX here: https://github.com/SUSE/eirinix/pull/16, this is just for consuming it in the CLI options.


Update Settings “general”

Automatically generated by Netlify CMS

👷 Deploy Preview for clinquant-pixie-1e1751 processing.

Name
Link

🔨 Latest commit
043f462e542ca69d68dda54515d4721acc544538

🔍 Latest deploy log
https://app.netlify.com/sites/clinquant-pixie-1e1751/deploys/64ddea8abccd5600089962f3


add option to idlpp to maintain the include file namespace

Depending on the version of OpenSplice add the -o maintain-include-namespace option to idlpp to enable preservation of the include path names in the for the idl generated files.

@dirk-thomas I have update the code with your comments

On Linux this should use the new Debian packages of OpenSplice (6.9.190227):

Linux
Linux-aarch64

On macOS and Windows the previous release of OpenSplice is still being used:

macOS
Windows

Reverted in #22.


Allowing URL isn't allowed when using OpenURI open method

I'm probably missing something, but why is webmock allowing a URI through Net::HTTP but not through OpenURI (using webmock 1.24.2)?
include WebMock::API
google = 'https://www.google.com'
WebMock.disable_net_connect!(allow: google)
uri = URI.parse(google)
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(uri.request_uri)
#=> #<Net::HTTP::Get GET>
open(google)
# WebMock::NetConnectNotAllowedError: Real HTTP connections are disabled. Unregistered request: GET https://www.google.com/ with headers {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}

# You can stub this request with the following snippet:

#stub_request(:get, "https://www.google.com/").
#  with(:headers => {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-#Agent'=>'Ruby'}).
#  to_return(:status => 200, :body => "", :headers => {})

#============================================================
#from /Users/gabrieljoelc/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/webmock-1.24.2/lib/webmock/http_lib_adapters/net_http.rb:114:in `request'

It looks like the allow option of disable_net_connect doesn't support passing in the protocol.
Changing that line to
WebMock.disable_net_connect!(allow: 'www.google.com')

causes your code to work.

Oh you are right. Is it because the OpenURI method isn't correctly constructing a SSL request or something? Why would webmock see that Net::HTTP request as matching the allow and not the OpenURI one?

Even with the protocol is removed weird things happen (related to SSL):
WebMock.disable_net_connect!(allow: %r{github.com/bblimke/webmock})
uri = URI('https://github.com/bblimke/webmock')
open(uri)
#=> disallowed
Net::HTTP.get(uri)
#=> disallowed
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(uri.request_uri)
#=> allowed

So all of those requests work if you change the first line to
WebMock.disable_net_connect!(allow: %r{github.com})

For some reason the uri.request_uri isn't working in the allow list. Not sure if that's a bug or not.

So all of those requests work if you change the first line to

Yea, I see that removing the path makes it work but I don't want to remove the path. Plus, the readme says that you should be able to use a regular expression including a path:

WebMock.disable_net_connect!(:allow => %r{ample.org/foo})

RestClient.get('www.example.org', '/foo/bar') # ===> Allowed
RestClient.get('sample.org', '/foo')          # ===> Allowed
RestClient.get('sample.org', '/bar')          # ===> Failure

For some reason the uri.request_uri isn't working in the allow list

I'm not sure what you mean by that since using the uri.request_uri with the Net::HTTP::Get.new(uri.request_uri) is the only one that works when the path is included in the allow.

this works ( :unamused: ):
WebMock.disable_net_connect!(allow: lambda { |uri| uri.host == 'github.com' && uri.path == '/bblimke/webmock' })
uri = URI('https://github.com/bblimke/webmock')
open(uri)
#=> allowed!!!
Net::HTTP.get(uri)
#=> allowed!!!
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(uri.request_uri)
#=> allowed

@gabrieljoelc in your examples request = Net::HTTP::Get.new(uri.request_uri) always works, because it doesn't make any network request. you are just constructing a request object and not making a call. It doesn't even touch WebMock.
I have added support for allowed option with scheme added.
Scheme was not supported.

The regexp issue was a bug indeed. Thanks for reporting.

request = Net::HTTP::Get.new(uri.request_uri) always works, because it doesn't make any network request

@bblimke yea, i know. i think i just copied and pasted wrong in the comments 😊


Fixed typo at ONEX_REASON_CODE description page

expirarion => expiration

@alexbereznikov : Thanks for your contribution! The author(s) have been notified to review your proposed change.


rocminfo leads to OOP

Hi,
Using rocm-dev from debian/ubuntu official repository (thus, with mainline debian buster kernel) leads to OOP while trying to get rocminfo. if i try to run it again, the process simply get's "stuck" (the same applies to clinfo, etc...)
System is debian buster, with all packages up-to-date, on a RX560, seen by lspci as
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Baffin [Radeon RX 460/560D / Pro 450/455/460/555/555X/560/560X] (rev e5)
lspci -vvv:
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Baffin [Radeon RX 460/560D / Pro 450/455/460/555/555X/560/560X] (rev e5) (prog-if 00 [VGA controller])
	Subsystem: Sapphire Technology Limited Baffin [Radeon RX 460/560D / Pro 450/455/460/555/555X/560/560X]
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Interrupt: pin A routed to IRQ 31
	NUMA node: 0
	Region 0: Memory at c0000000 (64-bit, prefetchable) [size=256M]
	Region 2: Memory at d0000000 (64-bit, prefetchable) [size=2M]
	Region 4: I/O ports at e000 [size=256]
	Region 5: Memory at fe900000 (32-bit, non-prefetchable) [size=256K]
	Expansion ROM at 000c0000 [disabled] [size=128K]
	Capabilities: <access denied>
	Kernel driver in use: amdgpu
	Kernel modules: amdgpu

uname -a:
Linux munch 4.19.0-5-amd64 #1 SMP Debian 4.19.37-5+deb10u2 (2019-08-08) x86_64 GNU/Linux
dkms status:
amdgpu, 2.7-22, 4.19.0-5-amd64, amd64: installed
openrazer-driver, 2.6.0, 4.19.0-5-amd64, x86_64: installed

lsmod | grep amdgpu:
amdgpu               4284416  21
amdttm                114688  1 amdgpu
amd_sched              32768  1 amdgpu
amdkcl                 32768  3 amd_sched,amdttm,amdgpu
i2c_algo_bit           16384  1 amdgpu
drm_kms_helper        200704  1 amdgpu
drm                   483328  10 drm_kms_helper,amd_sched,amdttm,amdgpu,amdkcl

Dmesg as an attachment
dmesg.txt
Could you please help me to solve this?
TIA

Your Motherboard (and CPU) are not supported for this GPU. The RX 560 requires PCIe atomics.
From your dmesg:
[    2.375695] kfd kfd: skipped device 1002:67ef, PCI rejects atomics

Kernel 4.19 is not supported either. However changing this won't make any difference because of the lack of PCIe atomics.
Your motherboard is pretty old and doesn't supports PCIe 3.0 at all, let alone atomics. You might be able to get Vega GPUs to work (they don't need atomics) but it's probably a better idea to get a newer motherboard. Anything AMD Ryzen or everything from Intel that's newer than Haswell will work.


[BUG] table loading state is false during refetching after invalidation

Describe the bug
useTable hook returns tableProps.loading, which is true during first loading or pagination changes, but if I go to edit page, change something, save and go back to the table - new data is loading but tableProps.loading is false so there are no loading indicator.
I have to use something like this to get real loading state
   const isLoading = tableProps.loading || tableQueryResult.isFetching || tableQueryResult.isRefetching
Steps To Reproduce

Go to a table with long data request
Open edit page
Edit something, save and go back to the table
Table doesn't show loading indicator

Expected behavior
Loading indicator
Screenshot
No response
Desktop
No response
Mobile
No response
Additional Context
No response

Hello @Yakoot, thanks for the issue!
As you mentioned, loading is true when we don't have any data initially and loading for the first time. I think your solution looks correct, you can use isFetching if you have some different use-cases. Closing the issue as this is an expected behaviour, but feel free to re-open it and/or provide us a minimal reproducible example if your issue is different.


Latest update is missing

15.6.27428.1 missing

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

ID: 7ea27919-8e31-6592-9b9e-9a0cabb0a7ff
Version Independent ID: 093eeeb2-0306-4af9-2bfc-6d4eefbebf9b
Content
Content Source
Service: unspecified

@mfriedrich74 Thanks for letting us know. A PR for this was placed in the queue yesterday; it should go live today.

@mfriedrich74 The update is now live: Visual Studio 2017 build numbers and release dates


perf: use map instead of weakmap

Summary
Following this issue https://github.com/gregberge/xstyled/issues/371, use a Map instead of a WeakMap for caches (with a theme stringifed as key instead of theme object). This will prevent continued cache growth.
Test plan
Check https://github.com/gregberge/xstyled/issues/371#issuecomment-1218335972

@jguddas Thanks for you comment, I'll close this PR. This fix looks very slow...


Reorganizing demo app #no-public-changes

Related to #484 and #345

Grouping files by features
Finder directories maps xcodeproj
A files renaming:

UserInterfaceActivityIndicatorViewController -> ActivityIndicatorViewController
PresentationPresentedViewController -> PresentedViewController

A few typo fixed (missing closed parenthesis in transition names, ...)
Add missing final
Removing public from demo app (the few I see, there's probably more)

There's still rooms for improvements around this, but it's a good first step!


Introduce overrideOptions and progress JSDocs annotations.

Proposal to handle #25
No change to existing consumers; continue using only the useDownloader initialisation unaffected, but this PR allows overrideOptions to be specified on the download invocation as well.
await download(DOWNLOAD_ROOT_URI + fileUrl, saveAs, undefined, { method: 'POST' });
Works for my scenario, should sort you as well @davecarlson (this is where I was heading on my PR last night anyhow; hope it works for you too - and ofc is acceptable to @olavoparno)

@9swampy - Thanks, yes this should be perfect for this !

@9swampy again, thank you very much for your contribution!


Message when you first login to 3bot on testnet still mantions "mainnet wallet"

Search first
No similar issue found
Description
Simple: the message when you first login to a new 3bot says that a testnet and mainnet wallet will be opened.  No need for a mainnet wallet (I think this is addressed elsewhere - just remove the message notification of the mainnet wallet).
Version information
New 3bot deployed on testnet
Installation method
3bot deployer
Steps to reproduce
new 3bot - log in - message appears.
Traceback/Logs/Alerts
Just visual.

Commit fe1bfec885b51dfb78a2cc1038d1e98d7348df79, Branch development


run.sh: Remove timeout

It's becoming hit on a regular basis since we switched to single-threaded tests.

Looks like it's hitting the 30 minute timeout too: https://github.com/bpfkorea/agora/blob/5bf7d2be692743b718dc3042c59911bdf9d4471e/.github/workflows/main.yml#L35

Looks like it's hitting the 30 minute timeout too: https://github.com/bpfkorea/agora/blob/5bf7d2be692743b718dc3042c59911bdf9d4471e/.github/workflows/main.yml#L35

+ AGORA_VERSION=HEAD
+ dub build --skip-registry=all --compiler=ldc2
Running pre-generate commands for vibe-d:tls...
Running pre-generate commands for agora...
Failed to execute '../../../../../var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/.dub/build/version_build-~master/application-debug-posix.osx.darwin-x86_64-ldc_v1.25.0-git-b6981d8-620C96D89F75376A4DA42780DC2B25ED/version_build' (No such file or directory)
Command failed with exit code 2: /Users/runner/hostedtoolcache/dc/ldc2-b6981d88/x64/ldc2-b6981d88-osx-x86_64/bin/dub source/agora/cli/version/main.d
Error: Process completed with exit code 2.

So this bug is not completely gone

+ AGORA_VERSION=HEAD
+ dub build --skip-registry=all --compiler=ldc2
Running pre-generate commands for vibe-d:tls...
Running pre-generate commands for agora...
Failed to execute '../../../../../var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/.dub/build/version_build-~master/application-debug-posix.osx.darwin-x86_64-ldc_v1.25.0-git-b6981d8-620C96D89F75376A4DA42780DC2B25ED/version_build' (No such file or directory)
Command failed with exit code 2: /Users/runner/hostedtoolcache/dc/ldc2-b6981d88/x64/ldc2-b6981d88-osx-x86_64/bin/dub source/agora/cli/version/main.d
Error: Process completed with exit code 2.

So this bug is not completely gone

Closing as I should have just blamed @AndrejMitrovic .

Closing as I should have just blamed @AndrejMitrovic .

Re-opened because the CI is still flakey (but it now passes... Sometimes) and hopefully this'll help.

Re-opened because the CI is still flakey (but it now passes... Sometimes) and hopefully this'll help.

Rebased

Rebased


mobile: Pass EnvoyError by const ref

This PR updates the on_error_ callback to pass EnvoyError by const ref instead of value. This PR also appends _ in the struct field members of EnvoyError to conform with Envoy naming convention.
Risk Level: low
Testing: unit tests
Docs Changes: n/a
Release Notes: n/a
Platform Specific Features: mobile

/retest

/assign @abeyad


tutorial improvements

Hi Jeremy,
I like most of the documentation, but think it needs to be expanded in 2 ways:

including more example use-cases up front in the intro. Why do people/labs need this?
Tutorial needs to include the basic set-up for local directory. Eg when I install and run
kachery-store on a directory, it says
WARNING: please use the KACHERY_STORAGE_DIR environment variable.
and apparently nothing is stored (this feels more like an ERROR than a warning).
I did
export KACHERY_STORAGE_DIR=/tmp/
and then it works and creates /tmp/sha1/ and /tmp/sha1-cache/
I think you need to guide the user through that process, encourage them to look at the result.

Only then move on to the remote server aspect. The docker-instructions for remote server is a little loose too - what is magland/kachery2 supposed to be for the user? An example set-up is needed here, maybe some flow diagrams.
Best, Alex

Thanks Alex. The warning about KACHERY_STORAGE_DIR is only a warning because by default it should use the /tmp directory. I guess we should verify that this is indeed the case.
I have updated the README to instruct the user on how to set up the KACHERY_STORAGE_DIR, and I also provide a quick motivating example. The tutorial should be expanded to further motivate using kachery.


Fix a typo in optim.md

Also, enable syntax highlighting.

By the way, I created https://github.com/tkf/OptimTensorBoard.jl before noticing this snippet in the documentation. FYI, you can also do a bit more magic to pull out some more logs from .metadata: https://github.com/tkf/OptimTensorBoard.jl/blob/a094d286e33641015fa202018fe2c27741543bfa/src/OptimTensorBoard.jl#L46-L48
PS: Thanks for this very useful package!

Thanks!
You just made me realise that we don't properly unpack Dicts by default, I'll try to fix that soon.


Broken syntax highlighting on PHP files.

code-server version: 1.31.1-100
OS Version: Ubuntu 16.04

Steps to Reproduce

Create a blank PHP file.
Start coding by using if ( isset( $some_variable ) ... . You'll notice that the syntax is broken after isset().

Attached to this report you'll find a screenshot related to this as well. Amazing product anyways :+1:  :smile:

Does this work in vscode?

@kylecarbs we're using vscode's syntax highlighting right so this shouldn't be a bug in code-server?

Correct(ish). We use a wasm port of the library VS Code uses. It's possible there's an issue with that.

Vanilla VSCode does seem to work:

I second

NGTmeaty. Here is my vanilla VSCode installation.

Def something wrong here. Will investigate.

I need to install php-cli to get php highlighting working without error message. Maybe add php-cli to docker image?

@pwFoo What was the error message that you received?

Without php-cli installed the message is that no php is found. Installed it in console fixes that, but highlighting has delay. It needs some time (maybe a half minute?) until directories and files are colored (local code is initially cloned from git) and code changes from plain to highlighted.

v2 finally fixed this by downgrading onigasm https://github.com/NeekSandhu/onigasm/issues/17.


Test failure: TestInvalidWriteOperations

This issue was made automatically. If there is a problem contact ryanbrandenburg.
 Check the link above for more info.
This test failed on release/2.2.
CC muratg

This comment was made automatically. If there is a problem contact ryanbrandenburg.
Please use this workflow to address this flaky test issue, including checking applicable checkboxes and filling in the applicable "TODO" entries:

Is this actually a flaky test?

No, this is a regular test failure, fix the test/product (TODO: Link to commit/PR)
Yes, proceed below...

Is this test failure caused by product code flakiness? (Either this product, or another product this test depends on.)

[ ] File a bug against the product (TODO: Link to other bug)
Is it possible to change the test to avoid the flakiness?

Yes? Go to the "Change the test!" section.
No?

[ ] Disable the test (TODO: Link to PR/commit)
[ ] Wait for other bug to be resolved
[ ] Wait for us to get build that has the fix
[ ] Re-enable our test (TODO: Link to PR/commit)
[ ] Close this bug

Is it that the test itself is flaky? This includes external transient problems (e.g. remote server problems, file system race condition, etc.)

Is there is a way to change our test to avoid this flakiness?

Yes? Change the test!

[ ] Change the test to avoid the flakiness, for example by using a different test strategy, or by adding retries w/ timeouts (TODO: Link to PR/commit)
[ ] Run the test 100 times locally as a sanity check.
[ ] Close this bug

No?

Is there any logging or extra information that we could add to make this more diagnosable when it happens again?

Yes?

[ ] Add the logging (TODO: Link to PR/commit)

No?

[ ] Delete the test because flaky tests are not useful (TODO: Link to PR/commit)

This comment was made automatically. If there is a problem contact ryanbrandenburg.
There were 34 failures with about the same error on release/2.2 at 8:05:26 PM:

TestInvalidWriteOperations
CustomErrorCodeWorks
CustomErrorCodeWorks
FeatureCollectionTest_SetHttpContextFeatures
TestInvalidReadOperations
TestInvalidReadOperations
CustomErrorCodeWorks
TestValidReadOperations
TestValidReadOperationsPost
CustomErrorCodeWorks
(And 24 more test failures in this build)

@jkotalik Something off with process lifetime detection logic?

https://github.com/aspnet/IISIntegration/issues/1546 is the underlying issue. There was a fix we added to the shim that wasn't included in the old shim package we pull. I'll rev the version slightly higher.

Closing in favor of #1546


I think pubspec.yaml file is wrong.

I think replacing 'author' with 'authors' will solve it.
Please refer to this document.

https://dart.dev/tools/pub/pubspec#authorauthors

I fixed it. Thanks! : )


RFE: Ability to attach additional metadata to logs based on environment/label

I'd like to be able to use an environment variable or label to attach additional meta-data to the logs emitted by logspout. The use case for this is to tag a log message with some type of additional data that can be used downstream for handling the logs.
For example, I could tag containers that output apache-style access logging (apache httpd, nginx, etc.) with a value like "access_log" and then a downstream instance of logstash or similar tool can use that information to parse the logs into structured data.

logspout-logstash  can add log tags

logspout-logstash can add log tags

This is exactly the kind of thing I was looking for. Why not make this capability available on logspout itself so that it can be used in setups that don't involve logstash? I use logspout-kafka instead of logspout-logstash.

Ah I see, I guess for logspout-kafka I can use .Container.Config.Labels to do something similar. I'll give that a try and if it works, I'll close this.

Using .Container.Config.Labels works fine. Closing.


update pypdfium2 dep and improve code quality

This PR:

update pypdfium to 2.1.0 (to use with statement) and set fix to <3.0.0 to avoid #947 in upcoming releases
improve code quality

Any feedback is welcome :hugs:

Looks good, then!

Thanks Felix, I was about to open a PR for this specifically :)
We should update the version specifiers of other dependencies accordingly I think

:sweat_smile:
About the deps part let us check if we can handle this with depend-a-bot this would make it much easier (really) ^^

That is a different problem though: dependabot is (to the best of my knowledge) reporting version specifier updates for security reasons
Here we need to reassess the upper and lower bound of each dep: I'll take care of it, and then set the dependabot :+1:


Add a mat-menu-group so that we can open (new) and close (old) menus on a single click.

Please describe the feature you would like to request.
Similar has been asked HERE:
For the same reason we have mat-accordion wrapping expansion-panel we need mat-menu-group wrapping mat-menu-trigger.
Currently we have to click 2 times when a menu is already open and we want to open  a new one. This feels unnatural to me.
A wrapping instance could control the closing and opening of its menu children.

JQUERY EXAMPLE (desired behaviour)
CURRENT MAT-MENU (no fluid skimming possible.)

What is the use-case or motivation for this proposal?
Definitely this would provide a better and more fluid UX if we can skim through the menus inside of a mat-menu-group. I like the idea of the backdrop that should still be there OUTSIDE of the mat-menu-group.

today I've been working on this feature:
Here is what I came up with:
https://stackblitz.com/edit/angular-eznyyh?file=src%2Fapp%2Fmenu-position-example.html
The part with "random click outside of the menu-stuff" closes the open menu is really tricky.
I solve this currently with stopPropagation of click when the "group" is clicked. However this will not work when I click another arbitrary element that does not propagate the click.

(TODO) - optimize - close menu on random click outside of menu.

possible solution

keep the backdrop and change the "z-index" of the "menu stuff" to be above the backdrop when open. #hacking #possiblyNotACleanApproach

(BUG) - when a menu of "case1" is open, and I open a menu of "case2", I have 2 menus open. Probably against the material-specs.

possible solutions

provide service that registers all mat-menu-groups:
2, provide an injectionToken with a behaviorSubject as value that allows communication between menu-groups.

@andrewseguin
@jelbourn


How to get a list of those new Active Sites using CSOM?

How to get a list of those new Active Sites using CSOM?
Can I have a Remote Event Receiver in a site like that?

@tbebekis thank you for submitting feedback.
I think the best way forward is if you open a service ticket in your tenant so this can get resolved ASAP. Based on the outcome let me know if it is something that can be called out in the docs.
Please follow this link to contact support for business products:https://docs.microsoft.com/office365/admin/contact-support-for-business-products
Please keep us posted here on the resolution so we can feed whatever information you discover into the content.