OAuth2 token handling

I'm currently researching an alternative for PostMan. Your extension is very impressive. We use PostMan mostly with endpoints using OAuth2 code flow to provide tokens. So I currently try to understand if there is already any way to request arbitrary OAuth2 tokens with httpyac.
I just discovered openIdVariableReplacer.ts and I'm wondering how to use it?   Are you planning to add some kind of OAuth2 token handling and/or are you open to PR in that area?

The support for OpenID is more or less the reason why I don't use vscode-restclient. And I don't really like Postman v8 either. OpenId is supported out of the box. You can view the requests in the output channel of the extension.
If changes are needed, pull requests are welcome. A description of the reason for the change or further documentation would be helpful.
All flows are tested with a keycloak server and openid configuration.
client_credentials
.env in workspace root
local_tokenEndpoint=http://localhost:8080/auth/realms/myRealm/protocol/openid-connect/token
local_clientId=...
local_clientSecret=...

service.http
GET http://localhost:8080/service/api/v1/foo
Authorization: openid client_credentials local

Output
POST http://localhost:8080/auth/realms/myRealm/protocol/openid-connect/token

authorization: Basic ...
content-type: application/x-www-form-urlencoded

grant_type=client_credentials
-----
GET http://localhost:8080/service/api/v1/foo
Authorization: Bearer ...

password
.env in workspace root
local_tokenEndpoint=http://localhost:8080/auth/realms/myRealm/protocol/openid-connect/token
local_clientId=...
local_clientSecret=...
local_username=...
local_password=...

service.http
GET /service/api/v1/foo
Authorization: openid password local

Authorization Code
.env in workspace root
local_authorizationEndpoint=http://localhost:8080/auth/realms/myRealm/protocol/openid-connect/auth
local_tokenEndpoint=http://localhost:8080/auth/realms/myRealm/protocol/openid-connect/token
local_clientId=...
local_clientSecret=...

service.http
GET /service/api/v1/foo
Authorization: openid authorization_code local

on this flow a local http server is opened receiving redirect from keycloak on port 3000

Great starting point.  I think it should be fairly easy to extend that to not only handle open id but also generic OAuth2. The main differences I would currently expect is that a) it should be possible to define which scopes should be used b) the returned token might not be a JWT.
I'm wondering about the purpose of the local_* name prefix? Aren't these endpoints usually provided by a remote service?
Are the returned access and refresh tokens persisted or just kept in memory?

The prefix more or less came about because I needed too many variables for the flows.  And I also have the use case with the token exchange where I need a second OpenId endpoint. It is possible to pass it also by object (realm.tokenEndpoint).
The returned acess and refresh tokens are only kept in memory. I have considered using keytar, but have currently discarded this.
I have seen the use case with the scopes, but I did not have a meaningful test for it and therefore ignored it currently. We can extend the current implementation if you can provide the test or a test scenario.

I'm going to setup a client id in MS AAD for both OpenId sign in and to access the MS Graph API. Their Graph API uses dozens of scopes to control access to all kind of graph endpoints.

I'm sorry - I'm a little lost. I registered a new client in AAD, I used http://localhost:3000/callback as the Redirect Uri. I created prod.env and selected the file:

I created a .http file to call the MS Graph /me endpoint (https://docs.microsoft.com/en-us/graph/api/user-get?view=graph-rest-1.0&tabs=http)

I didn't figure out how to now a) to start the Open Id sign in flow and then b) to use the returned access token for the bearer authorization.

I made some progress. I missed  Authorization: openid authorization_code local  - my assumption was something like {{access_token_local}} local is the prefix for the variables in the .env file?

Authorization: openid authorization_code local
After send OpenIdVariableReplacer matches auth header by regex  and opens a browser with authorizationEndpoint

That gives me now the url https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=0c1d9732-466e-458f-85d7-260e448831a8&response_type=code&state=L1PaqDwpNg0fKHilfrEJceFaYS8PF0&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fcallback
A working url we generate for our site is https://login.microsoftonline.com/common/oauth2/v2.0/authorize?response_type=code&access_type=offline&client_id=798429c7-66a7-462b-9bc7-88e124e680b0&state=b2ZmaWNlLTM2NXwvfG9pZGNzaWduaW58MjAyMS0wMi0yMVQyMDo0NTo1Nlp8ZDYwMWE3MDYwMGFhZmFjNjdlZGFlMjg1MjhjMGI4Mjc2Zjc3ZjRmZQ%3d%3d&redirect_uri=https%3a%2f%2fapp.adenin.com%2foauth2connector%2freturnUrl&scope=openid+profile+email
So it seems that access_type and scope parameters are added.

Currently I assume that the next steps to generalize bearer authorization could be:

add option parameters local_access_type and local_scope  When present &access_type and/or &scope should be added to authorize url
support also Authorization: oauth2 authorization_code local   I think the only difference between oauth2 doesn't expect the id_token in the response and that the login failure ("Anmeldung gescheitert") should probably be "Login failed" for openid, and "Authorization failed" for oauth2,

on authorization_cod]e(https://openid.net/specs/openid-connect-core-1_0.html#AuthRequest) flow scope is required. I added param `local_scope'. If it is empty value openid is used.
I did not add parameter access_type because it is not mentioned in OpenID Flow. It is only relevant for Google Identify Service, (stackoverflow). Please just add the parameter to the authorizationEndpoint http://localhost/auth?access_type=offline
I added support if access_token is not a valid jwt token. In this case timeskew (estimated time diff between local and server) is set to 0.
login failure message is changed to Authorization failed. This message gives the best indication of problems with the authorization.
Since I don't currently validate the id token, oauth2 and openid don't really differ and I'll spare myself this distinction.

Thank you for your fast enhancement. I've installed 1.14.0 (2021-02-22) and add added the line local_scope=openid profile email to my prod.env file.
It generates now the url https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=0c1d9732-466e-458f-85d7-260e448831a8&response_type=code&state=34jcLubOQLW9vsnxA9RPREY8Js2AqD&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fcallback  which neither contains my scope nor the new default openid. Did I miss anything?

Since I don't currently validate the id token, oauth2 and openid don't really differ
From my understanding oidc is an specific, limited use case of oauth2. As soon as scope works I think you'll also support oauth2. For our use cases oidc is not relevant. I had been searching for a tool supporting oauth2 and nearly skipped your outstanding solution as I didn't see oauth2.  So using openid as the only keyword is just fine, but I think that using the oauth2 as the main keyword might attract more users.

Did you reload vscode after install? On my computer it works.

Thanks for the recommendation with OAuth2. I will add it to the README.md.

code showed a "restart" button - which I think I had clicked. I now restarted it manually, but I get now the following error when clicking on send
TypeError: Cannot read property 'indexOf' of undefined at c:\Users\ma\.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:433316 at
Generator.next (<anonymous>) at c:\Users\ma\.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:430055 at new Promise (<anonymous>) at
n (c:\Users\ma\.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:429800) at
c:\Users\ma\.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:432899 at
new Promise (<anonymous>) at w (c:\Users\ma\.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:432879)
at authorization_code (c:\Users\ma\.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:434934)
at c:\Users\ma\.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:432103 at Generator.next (<anonymous>)
at c:\Users\ma\.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:43005...

I experienced this error myself. Did you select your environment? Parameter
authorizationEndpoint is not found. It will get fixed in next release
Martin Amm<EMAIL_ADDRESS>schrieb am Mo., 22. Feb. 2021, 17:52:

code showed a "restart" button - which I think I had clicked. I now
restarted it manually, but I get now the following error when clicking on
send
TypeError: Cannot read property 'indexOf' of undefined at c:\Users\ma.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:433316 at
Generator.next () at c:\Users\ma.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:430055 at new Promise () at
n (c:\Users\ma.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:429800) at
c:\Users\ma.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:432899 at
new Promise () at w (c:\Users\ma.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:432879)
at authorization_code (c:\Users\ma.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:434934)
at c:\Users\ma.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:432103 at Generator.next ()
at c:\Users\ma.vscode\extensions\anweber.vscode-httpyac-1.14.0\dist\extension.js:2:43005...
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/AnWeber/httpyac/issues/1#issuecomment-783514476, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ADGP643GXBJ6HRVEZ7QK62DTAKDUPANCNFSM4X7IBUUQ
.

You are right, I didn't select an environment. The error is gone now, but unfortunately the sign in page now doesn't  open at all.

I'm now login into O365, but then I'm prompted, and after clicking Open I get the error below. Is there any url on http://localhost:3000 I can invoke to see it the server responds?

Oh man, that hurts. i am an enemy of usability.  This is the good case. It worked and there is a redirect to vscode//{filename}}. The behavior occurs because you were already logged in. I change it to a boring html page:-)
After that, the http server will be terminated immediately, so you will not be able to call it again. This behavior is intentional, as I still find opening an http server very unexpected, so I wanted to minimize its use (=> error page).
The deadlock (browser does not open) you observed is probably due to the fact that for each request I start the server independently. I guess I will have to improve the management of the server. For me it was enough, but if the behavior is a black box, it should become more comfortable.

I didn't check what the VS Code WebViews do exactly - but maybe they can be used to launch the auth flow inline instead of launching an external web browser? PostMan also has a simple web browser included, and they seem to just detect the final redirect. So when the server responds with 302 to redirect_uri they just detect that, but do not redirect to the page at all. Which is quite neat as you can just use any existing redirect_uri and you don't need to register an additional client id for the http://localhost:3000/callback.

No, Webview cannot fulfill this functionality. That was my first idea. Best support I can get from vscode is Authentication Provider but this is VSCode Insiders.
But I also want to support cli with this project, so I don't want to use VS code functionality at this central point. I just need to make the http server more chatty, then it should work.
After the redirect the code gets exchanged for access_token. How can Postman support this without its own ClientId. Do you have a source for this behavior?

In Postman I can use any existing client id, secret & redirect_uri. It seems that e.g. https://stackoverflow.com/questions/58156957/how-postman-complete-the-oauth-2-0-flow-without-actually-redirect-to-the-redirec explains how they do it. From my understanding their "trick" is that they have an internal web browser, which can detect the 302 response from the server.

In this case you really trust Postman with a lot (ClientSecret, ClientId, Username and Password). I also considered using a headless chrome like in Browser Preview. But it was too much effort for me and with the current implementation I can also use the password management of the browser.

Headless would work, but it's a pain to maintain and you would need to know the users password. We already use Puppeteer in visual regression tests. But you need a script for each partner, and every time the page where their authorize the access changes, the script needs to be changed.
VS Code uses a relay/proxy server https://github.com/microsoft/vscode/blob/a699ffaee62010c4634d301da2bbdb7646b8d1da/extensions/github-authentication/src/githubServer.ts#L17 to handle GitHub authorization, which stores the received token in keytar. For using a similar concept, setting up a proxy server like Grant might be an option, but would be another dependency to setup and maintain.
I think using short-lived mini web server to receive the token is a brilliant idea and I also like the idea to not persist the received token at all.

new version with fix is released. may you please test. thanks:-)

Thank you. I now always got the tokens and accessing the MS Graph endpoints works as well.
In my tests I needed to use different scopes. But after changing the .env no new token was requested. The only option to request a new token I found was restarting VS code.
So it would be great if a changes of the scope value since the token was requested would be detected, or having an "request token" code lens would probably be even better.

Presumably the scope is deifned as an inline variable. This was not considered in the cache. I have now changed the CacheKey to the actual values, so it should work after the next release.
Unfortunately I didn't understand your idea with the Request Token CodeLens. My approach is to remember the token after use and if there is a refresh token, use it to keep the login alive.

Using the scope values as part of the cache key will solve the problem as well. I was wondering if it would make sense to be able to explicitly request a new token even if a token is already cached. Currently VS code needs to be restarted if I want to get a new token. Having a code lens would allow to request a new one without having to restart.

OAuthTokenStore is cleared on reset environment. Use command "refresh/
reset environment"
Martin Amm<EMAIL_ADDRESS>schrieb am Sa., 27. Feb. 2021, 15:53:

Using the scope values as part of the cache key will solve the problem as
well. I was wondering if it would make sense to be able to explicitly
request a new token even if a token is already cached. Currently VS code
needs to be restarted if I want to get a new token. Having a code lens
would allow to request a new one without having to restart.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/AnWeber/httpyac/issues/1#issuecomment-787084131, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ADGP645OI5ZW3P5AMV66TWDTBEBPXANCNFSM4X7IBUUQ
.

I think using the scope as part of the cache key will not always work. Let's have say

I have a client id "A" and scope "read"
I authorize access and get a token for client id "A" -> "token1"
I change scope to "read write" and authorize access; get a new token -> "token2"
I change scope back to "read"

In a quick test it seems that current result is that "token1" is used again. But a new token should be requested, most OAuth implementations I'm aware of manage one token per user and client id. So as soon as "token2" was issued, "token1" became invalid and cannot be used again.

One token per user, client and token endpoint should work. I switch between different oauth server with same user and clientId and don't want to login everytime. Do you agree?

I now repeated my test:

I started with local_scope: openid profile email User.Read in my .env
requested  GET https://graph.microsoft.com/v1.0/me/people which failed as expected
I added People.Read to scope
I requested  GET https://graph.microsoft.com/v1.0/me/people again
a new token is requested for the changed scope, and access to the endpoint works
I changed scope in .env back to local_scope: openid profile email User.Read and I requested  GET https://graph.microsoft.com/v1.0/me/people again

My assumption was that access would fail as the current scopes do not allow access to the endpoint. But access was successful. I understand why it worked. I don't know how to get rid of the previously cached token, without restarting.
I'm not sure if the current behavior is a bug or a feature.

I have now refactored the management of OAuth tokens. These can now be viewed and also deleted using the command httpyac.logout. For example for user session detection the ClientId, TokenEndpoint and OAuth Flow type is used. This should remove the previous token when the token is changed. I have also prepared the integration of the Implicit Flow. (5bb91c9b9149af49b44a4f3899773ba6a380c655)

Works great.   It would be nice if the logout command could also be started from code lens.

released new version with code lens support

The code lens is very helpful.
An idea for a minor improvement would be to show the environment name e.g. currently I don't see that the active token is based on "local2":

Great idea. I did not like the display of the tokenEndpoint, only the display of the environment was not easily possible. The prefix is a good compromise.


Readme and contribution guide file updates

Minor formatting change to the Readme, plus contribution files for consistency with the other exposure notification repositories.

Thanks @sboisvert! 🙌


some code is running inside a loop the doesn't need to be - performance issue

Refactor assign_classes_to_nodes and def assign_classes_to_edges

Moved repeated code out. Had to tweak some of the thresholds for the node sizes and colors as part of this change.


Upgrade requirements and include yextend

to: @jacknagz
cc: @airbnb/binaryalert-maintainers
size: medium
resolves: #76
resolves: #77
contributes to: #16
Background
In preparation for BinaryAlert v1.1 (which will add support for archive extraction), we need to upgrade all requirements and add yextend as a dependency.
Changes

Upgrade terraform from  ~0.10.4 to ~0.11.0

Change module output syntax if count = 0
Update documentation to reference TF 0.11 (instead of "latest version")

Upgrade terraform/aws-provider from ~0.1.4 to ~1.3.1
Upgrade cbapi from 1.3.2 to 1.3.4
Upgrade yara-python from 3.6.3 to 3.7.0
Add yextend 1.5.0 to the analyzer bundle (not used yet, but needed for archive analysis)
Update READMEs about how to build native dependencies in Lambda AMI
Fix bug: terraform get may be required before applying KMS ops in ./manage.py configure
Increase dispatcher timeout and dispatch limit (handles batch analysis much more efficiently)

Testing

Unit tests
./manage.py configure (no downloader)
./manage.py live_test
./manage.py configure (enable downloader)
Live test of downloader

Coverage increased (+0.04%) to 95.784% when pulling acce0a59b9afa86a2ccf585d7d33a0b6cc034d6f on austin-upgrade-yara-deps into 4dbc2e0220ccd1e8fbeaafb6f3075c23912c536f on master.


Translate Ingress in Bahasa Indonesia

This is a Feature Request

What would you like to be added
ingress.md
Why is this needed
Before one can create an ingress controller, fundamental about ingress is needed.
Comments

/language id

/assign @irvifa


Google Font error while compiling.

1 - Describe the bug: Compilation error
2 - Expected behavior of what should have happened (if applicable): No google font error while compiling.
3 - Screenshots (if applicable)

4 - Additional notes

Thank you @harjotkarwal for reporting this error.
Maybe we can make the import of the font optional for similar cases

I don't know about the internet because I used 'Lato' font in my PR and it didn't show any error.
I managed to compile it by terminate and re-run git command after each change.

The error shows a connection error so I'm pretty sure it was an internet problem. Let's keep this issue up for now to see if any other contributors have a similar issue or not.


Firefox Releases

Request type

[ ] Please close this issue, I accidentally submitted it without adding any details
[ ] New documentation
[x] Correction or update

Details

Hello,
When accessing the release page, I found that the latest version of firefox on android is 68.11.0 but on my mobile, accessing google play, I can see 79.0.3. This is very confusing

https://www.mozilla.org/en-US/firefox/releases/
https://www.mozilla.org/en-US/firefox/android/notes/ redirect to https://www.mozilla.org/en-US/firefox/android/68.11.0/releasenotes/
https://play.google.com/store/apps/details?id=org.mozilla.firefox -> shows 68.11.0 on regular browser
Images:
Firefox version accessible from the application
Firefox version displayed on google play from the mobile application
Firefox version display on google play from a browser

Any idea? now i have 79.0.5

Hi @NargiT, the answer is that Firefox Mobile was not updated for a long time, while they worked on a complete new version. So it was stuck on the old version (fennec) for quite a lot of versions.
AFAIU, the new version (fenix) has just bene released to the app store, hence the version number jumping.

Still does not explain why the website is not up to date. I have a ticket open for an application because the app does not work with my version of firefox. And they rely on the version specified on the website....@chrisdavidmills

I've just tried firefox mobile release on my Android phone, and the version is showing as 79.0.5.
Are you saying that you've still got 68.0.x installed? Try uninstalling and installing again?

This issue concerns the following link https://www.mozilla.org/en-US/firefox/android/notes/  and understand why it's not up to date with what the play store shows.


Expanding comment editor

I often find the comment editor too small and have to scroll down, and then drag down on the tiny little handle in the corner to make it bigger. Its really hard to click on too.
Ideas

How about a button to expand the size of the editor?

Or what about auto-expanding if the text overflows it?

An easier handle, maybe in the center bottom of the text editor, seeing as the corner handle appears to afford resizing horizontal which is impossible.

The bottom of the text editor sticks to the bottom of the viewport, and scrolling down expands the size of the editor to a maximum of the viewport height. Scrolling up reduces the size to a minimum of the default height.

This might be a good idea.
The auto-expanding text field has been implemented already by @bfred-it in the extension options. This should be no different.

Where do I find the extension options?

Click on the extension icon on the top right bar
Or go to chrome://extensions, click Details for the extension, then select Extension options

This was fixed by https://github.com/sindresorhus/refined-github/pull/1871.


Added Multidimensional Array

Added Multidimensional Array as part of arrays

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

I've added this as part of Hacktoberfest and went deeper in the issue of PHP Arrays

Looks good. Congrats on your first contribution @FlorijanAndonov 🔥


Make run[_non]_revertible use fee token address according to version

This change is

Codecov Report

Merging #890 (8330b44) into main (f53c708) will decrease coverage by 0.01%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main     #890      +/-   ##
==========================================
- Coverage   69.81%   69.80%   -0.01%
==========================================
  Files          42       42
  Lines        5711     5710       -1
  Branches     5711     5710       -1
==========================================
- Hits         3987     3986       -1
  Misses       1353     1353
  Partials      371      371

Files Changed
Coverage Δ

.../blockifier/src/transaction/account_transaction.rs
93.59% <100.00%> (-0.02%)
:arrow_down:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


IMPROVING THE UI OF EVENTS PAGE

Current Behavior
THE UI IS NOT LOOKING GOOD , I CAN MAKE IT MORE EFFECTIVE
Desired Behavior

Screenshots / Mockups

Yes sure, go ahead @kharshita590 . Open a PR with required screenshot, we will review it soon!

I have raised a issue regarding this, further conversations can be continued there!


Fix to append the Y axis of the Right joystick

The current implementation appends the LY axis for two times (maybe with wrong order), and forgets to do the RY one.

@ssr-yuki Thank you for your contribution!


Missing Pairing::BaseField?

In https://github.com/arkworks-rs/algebra/pull/447/ the associated type of Pairing::Fr was replaced by Pairing::ScalarField.
Pairing::Fq was removed without a counterpart added (BaseField?).
Example where this would be needed: https://github.com/arkworks-rs/poly-commit/blob/master/src/kzg10/data_structures.rs#L349
I've got a (somewhat ugly) workaround in this WIP for refactoring poly-commit: https://github.com/arkworks-rs/poly-commit/pull/106/commits/537e307ad25cd5c1849e7ada6a446e3053dc5eff
Should we add BaseField to the Pairing trait? Is there a better way to do this?

This is a good catch. Yes, let's do it.


Siwaliks bulk upload

Activity
Show details
Write a comment…
indre.zliobaite Apr 3, 2023 7:15 PM
They are, that would be perfect, but it is not clear who and where will run that database.
Reply • Delete
Kari Lintulaakso Apr 3, 2023 4:11 PM
I think Isaac and David are offering their database as a solution for the Sivaliks data. It is a specimen-level db.
Edit • Delete
indre.zliobaite Apr 3, 2023 2:42 PM
Will they have own specimen level databse?
Reply • Delete
indre.zliobaite Apr 3, 2023 2:40 PM
IZ wrote to John Barry about bulk upload (and asking when he could share specimen level data). Kari cc. No reply so far.


KeyValueStore - how do I iterate through keys

I am probably missing something obvious, but how do I iterate over values in a bucket or get a list of keys from KeyValue storage?
func store(db *storm.DB) {
	for i := 0; i < rand.Intn(20); i++ {
		db.Put("r", rand.Intn(1000), rand.Intn(1000))
	}
}

func retrieve(db *storm.DB) {
	for k := range ???? {
		var value int
		db.Get("r", k, &value)
	}
}

I guess there is no easy way on a bolt side - it always retrieves keys with values. Oh well.

Sorry for the delay, you can use Select with Each.
db.Select().Each(new(User), func(record interface{}) error) {
  u := record.(*User)
  ...
  return nil
})

Thanks Asdine. What will be lock granularity here - one for per Select, one per whole Each, or one per each function invocation?

One read lock for the entire Each scan.
All the methods not returning an error in the Query interface perform a read lock until they're done https://github.com/asdine/storm/blob/master/query.go#L33-L51

I have to iterate through live and possible quite big set of items (while they are keep coming). Any suggestions how to improve that?
I don't care much about missing them on iteration, but whole-Each locking will be problematic for adding items...

Something like a stream of data that continously gets written in Storm ?
If i understand well, you are trying to use Storm like a queue system and expect the Each to call your func everytime there is a new record ?

It might come to that (streaming), but not yet.
There is a semi-constant stream of files coming (from 3rd party), that contains "Events" of some sort. We get them, parse them, and put them into perm storage for tracking. Each Event has EventID, and if EventID is known already, an exiting record for that Event is getting updated. When there is a change to an Event Set, Operator's Application is getting notified, and it comes back and retrieves them for the operator to see. (Right now all of them, later will be just changed ones). If I lock the set to iterate through for sending them out, updates on that "table" will be stalled, and it is not a desired behaviour.
I hope it describes it well enough, sorry.

You won't be able to read and update concurrently, that's not how Bolt was designed.
Also you cannot scan a bucket consistently using several transactions because you have no guarantees that new records were not added before your current cursor (which won't be valid once the transaction is closed anyway).
There are no obvious solution for your use case but maybe implementing some kind of CQRS might help a bit:

All the writes go to a Storm database A and describe events
All the reads are made from a Storm database B which contains state
A goroutine applies all the changes from A to B

This solution allows you to write at high speed with no read lock so all of your update requests can return rapidly. But this also introduces a delta (i.e the time for your goroutine to apply one change from A to B) which must be taken into account for your business.

You could also have a pagination system:

Insert a record with a CreatedAt field
Select and order by CreatedAt

var lastCreatedAt time.Time
for {
  var record Record
  err := db.Select(q.Gt("CreatedAt", lastCreatedAt)).OrderBy("CreatedAt").Limit(1).First(&record)
  if err != nil {
     return err
  }

  if record == nil {
    // you reach the end of the bucket
    break
  }

  lastCreatedAt = record.CreatedAt
}


init implementation for update SparseMatrixCSC.

Hi! I added an initial implementation for an update protocol for SparseMatrixCSC. I followed the defined structure for SparseMatrixCSC in the following documentation.

Thanks for your contribution! It looks like this wasn't quite what we need, but I've adjusted the description in the github issue here: https://github.com/willow-ahrens/Finch.jl/issues/320.

Also, note the contributing guidelines here for more info about PRs and tests: https://github.com/willow-ahrens/Finch.jl/blob/main/docs/src/CONTRIBUTING.md


Fr

add  fr language

Thank you very much for adding the French language to my plugin.
I plan to add your code as soon as possible, whilst preparing a big update for my plugin.

Thank you very much for adding the French language to my plugin. I plan to add your code as soon as possible, whilst preparing a big update for my plugin.

If I can help, don't hesitate. I developed an equivalent plugin, but under emacs. https://github.com/DarkBuffalo/org-verse
what would be nice is to have a banner that allows you to locate the references of the verse where the user is in the other note files and to be able to click on it to go to the corresponding notes.


Error using DSCacheFactory with $http/ $resource and localStorage

Following the second scenario on the following guide link Angular-cache w/$http, if you set storageMode: localStorage you get the following error:

TypeError: undefined is not a function
at Object.get (http://localhost:52554/scripts/lib/angular-cache.js:363:35)

It seems this.$$storage.getItem is undefined.
If you remove the localStorage option it works as expected.

ngResource is now officially support in 4.1.0


view.setCenter() with coordinates as strings causes inconsistent behaviour

When calling view.setCenter() with the coordinate array containing "numbers" as strings the map will change position to the correct center, but then some functinallity works while other functionality returns the view center as [NaN, NaN].
Specific issues I had were dragging the map and olView.calculateExtent(olMap.getSize()) returning [NaN,NaN,NaN,NaN]

Please use the types listed in the API docs to avoid such issues. The argument of ol.View#setCenter() is {Array.<number>}.

Why not checking types with assertions to prevent bad arguments?

We decided not to do so.

I am using parseFloat() now that I know what was causing my problem. What was confusing is that it looked like it is working (moved the view center to the specified position) but then I couldn't drag the map.

What are the reasons for this decision? Is there new knowledge of good software design? I think you and the users of ol3 could save a lot of time when validating input arguments (type checking included). I suppose there will be a lot of more issues of this kind in future.
Best wishes

In the latest 4.0.1 (and in 3.20.1), using an array of string values (such as ["123", "456"], in my case badly parsed from a URL) causes a complete freeze of Chrome, Firefox, Safari and Internet Explorer.
Live example for 4.0.1 on https://codepen.io/anon/pen/jBOwjL
var view = new ol.View({
  center: [546000, 6868000],
  zoom: 13
});

var map = new ol.Map({
  target: 'map',
  layers: [
    new ol.layer.Tile({
      source: new ol.source.OSM()
    })
  ],
  view: view
});

// This will freeze the browser
view.setCenter(["546000", "6868000"]);

Please supply numbers, as this is the expected and documented type.

I just encountered this issue (by inadvertently passing strings from a database request to View.setCenter()) and have to say I'm very surprised at the decision not to do any input validation; particularly given the repercussions in this particular case.  If the result was silent failure I could almost accept it; but the symptoms I experienced look like a massive memory leak, crashing the browser and bringing my system to its knees.  That's very uncool.
I'd encourage you to either do type-checking; or, failing that, at least prevent memory leaks when the wrong type is passed...

@blindfish3 Hehe, you could also use ol3 in a typesafe way: https://github.com/TDesjardins/gwt-ol3/ :-P


fix: make the test pass wthout using magic numbers

This change is

I am still going. There are more tests to fix, but I would like a review of my changes.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 70.17%. Comparing base (d5fc1ab) to head (3fb8a62).
Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1567      +/-   ##
==========================================
+ Coverage   70.15%   70.17%   +0.01%
==========================================
  Files          59       59
  Lines        8330     8332       +2
  Branches     8330     8332       +2
==========================================
+ Hits         5844     5847       +3
  Misses       2012     2012
+ Partials      474      473       -1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Subscribe to request_get__attributes Message in Metaclass

Describe the chore that needs to be addressed.
The request_get_<module>_attributes message could be subscribed in the data manager metaclass using string substitution.

Add the following to the data manager metaclass:

pub.subscribe(self.do_get_attributes, "request_get_{}_attributes".format(self._tag))

Update the class attribute _tag to the singular form in each data manager class that isn't already singular.
Then remove the subscriber in each data manager class.

[ ] This issue is an epic issue which subsumes the following:

Closed to #574


Added contact groups and test function.

Added contact groups and test function for continuous walking.

+1 from me.  Ok to merge?
In the future we need to remove hard coded contact points from footstepsdriver.py, but this change is fine given that we already had all those numbers.
Please write python if statements without parenthesis around the condition, they are not needed.  As in:
if robotType == 0:

instead of
if (robotType == 0):

I'm happy to merge it too.
I'll put it on my list to remove the hard coded contact points and query the urdf directly..

A while back I added API to query the contact points.  I need to review the reason, but I think I determined that the retrieved contact pts were not symmetric between left and right foot.  At the time, there wasn't code to distinguish between left foot and right foot contact pts (it was assumed they were symmetric w.r.t to each foot frame) so I just left the hard coded points.  But I think now we distinguish between left and right (as it was required for Valkyrie) so we can probably update the code now to do the right thing.  There might also be some special handling required to retrieve contact pts only for just toe/heel and not the midfoot.


Fix artifact project

closes #94

@zuzuleinen this behavior should be assured. Would be nice to have a test which checks that the projectname is set correctly for all tasks with local & remote repositories.


Remove copy option of the annotation example

I propose we change the way this looks  so it doesn't look like a piece of code to copy.
Had several instances where people were asking why they did get errors on that line of code

Fixed in repo

Fixed in repo


Project: Orders TODO

Project name
Orders TODO
Description
This code is a sample implementation of using Azure Graph API to manage tasks in a Todo List. It uses the Microsoft Graph .NET SDK to interact with the Graph API.
The main purpose of this code is to create and manage tasks in a Todo List. In this example, the code creates a Todo List named "Orders" if it doesn't exist and then adds a new task with random order details to the "Orders" list.
The idea is to connect this to an API that will receive orders from an e-commerce website and will create the corresponding one for the owner of the shop or team to prepare and ship the order.
Repo URL
https://github.com/theodosiskats/orders-todo
Team members
theodosiskats

Nice! Thank you for submitting your hack!

Hey @theodosiskats, would you mind recording a short video walkthrough of your hack? Any format will work. It's not required for the hackathon but it would help us showcase your work both internally at Microsoft and publicly in the community. 😊

https://www.youtube.com/watch?v=c2Daxyse1FQ&ab_channel=TheodosisKatsoulis

Thank you! If you could please drag and drop it here in a comment, it would be helpful.

https://user-images.githubusercontent.com/61335485/224930171-e262f06c-04f7-4fa4-a0db-13be08fe214b.mp4


schema: fix json formatting

Signed-off-by: Antonio Murdaca<EMAIL_ADDRESS>

LGTM

closing in favour of #158


[3.2] Workaround for alpha scissoring with opaque pre-pass in SpatialMaterial

This implements a workaround for broken alpha scissoring with opaque pre-pass in 3.2.
Video:
https://user-images.githubusercontent.com/55308941/104935573-af48de00-59ab-11eb-8308-e909c4e7deea.mp4
with workaround:
https://user-images.githubusercontent.com/55308941/104942616-fab3ba00-59b4-11eb-937e-325d82ce2d6d.mp4
This doesn't fix the real issue, because alpha scissoring will still be broken if used with ALPHA_SCISSOR=alpha_scissor_threshold;, but this will be reimplemented in 4.0, so I think this workaround is good enough for now.
(workaround by AsherGlick and Arnklit here: #36669)
MRP: alpha_scissor_workaround.zip

I'm not sure about this. This changes behaviour for both GLES2 and GLES3, while it seems like the original bug was GLES3 only.
I also don't like the idea of changing engine source to add a workaround that was suggested for users to add to their own shaders. We would potentially break user's materials who are not running into this bug.
What we need is a PR that fixes the underlying bug which is likely in drivers/gles3/shaders/scene.glsl.

I'm not sure about this. This changes behaviour for both GLES2 and GLES3, while it seems like the original bug was GLES3 only.
I also don't like the idea of changing engine source to add a workaround that was suggested for users to add to their own shaders. We would potentially break user's materials who are not running into this bug.
What we need is a PR that fixes the underlying bug which is likely in drivers/gles3/shaders/scene.glsl.

You are right, I don't like this workaround either, but I don't think I can fix the glsl code, because I'm not really experienced with the source of godot.
I did this in the first place, because all my 3d models with alpha scissor are broken, and as far as I know I can't convert an imported SpatialMaterial into a shader.

You are right, I don't like this workaround either, but I don't think I can fix the glsl code, because I'm not really experienced with the source of godot.
I did this in the first place, because all my 3d models with alpha scissor are broken, and as far as I know I can't convert an imported SpatialMaterial into a shader.

I got another Idea, what if we expose the function to convert a SpatialMaterial to a Shader, so users can do this workaround inside an import script. This is what I wanted to do in the first place, but I wasn't able to find a function for converting.

I got another Idea, what if we expose the function to convert a SpatialMaterial to a Shader, so users can do this workaround inside an import script. This is what I wanted to do in the first place, but I wasn't able to find a function for converting.

I'm closing this, someone wih better experience should fix this properly.

I'm closing this, someone wih better experience should fix this properly.


Upgrade ServiceRuntime to the new Runtime revision [ECR-3664]

Overview

Upgrade the ServiceRuntime to be compatible with the newer Runtime
spec from the Exonum core (exonum/exonum@0f44d1c):

Replace ServiceRuntime#startService + stopService with addService

restartService.

Add ServiceRuntime#shutdown, which stops the server and unloads
all artifacts.
Update the core .proto definitions

See: https://jira.bf.local/browse/ECR-3664
Definition of Done

[x] There are no TODOs left in the code
[x] Change is covered by automated tests
[x] The coding guidelines are followed
[x] Public API has Javadoc
[x] Method preconditions are checked and documented in the Javadoc of the method
[x] Changelog is updated if needed (in case of notable or breaking changes)
[ ] The continuous integration build passes

Coverage decreased (-0.3%) to 85.881% when pulling f00c7f9e7ae9576f874a62535ba1d323ab238fd6 on dmitry-timofeev:upgrade-ds-2-ECR-3664 into fad3c49d2ad0883ed664029038686194421d949b on exonum:dynamic-services.

👍

Rebased and pushed to dynamic-services-upgraded-ECR-3664, as the changes require the appropriate native changes (#1179)


npo.nl unknow url type npo+drm

Please follow the guide below

You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your issue (like this: [x])
Use the Preview tab to see what your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2018.02.26. If it's not, read this FAQ entry and update. Issues with outdated version will be rejected.

[x] I've verified and I assure that I'm running youtube-dl 2018.02.26

Before submitting an issue make sure you have:

[x] At least skimmed through the README, most notably the FAQ and BUGS sections
[x] Searched the bugtracker for similar issues including closed ones
[x] Checked that provided video/audio/playlist URLs (if any) are alive and playable in a browser

What is the purpose of your issue?

[x] Bug report (encountered problems with youtube-dl)
[ ] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

If the purpose of this issue is a bug report, site support request or you are not completely sure provide the full verbose output as follows:
Add the -v flag to your command line you run youtube-dl with (youtube-dl -v <your command line>), copy the whole output and insert it here. It should look similar to one below (replace it with your log inserted between triple ```):
youtube-dl -v https://www.npo.nl/de-luizenmoeder/25-02-2018/AT_2091794
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-v', u'https://www.npo.nl/de-luizenmoeder/25-02-2018/AT_2091794']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2018.02.26
[debug] Python version 2.7.12 (CPython) - Linux-4.2.8-x86_64-with-glibc2.2.5
[debug] exe versions: ffmpeg 2.8.5
[debug] Proxy map: {}
[npo] AT_2091794: Downloading JSON metadata
[npo] AT_2091794: Downloading token
[npo] AT_2091794: Downloading formats JSON
[npo] AT_2091794: Downloading Adaptive stream JSON
[npo] AT_2091794: Downloading m3u8 information
[npo] AT_2091794: Downloading Hoog stream JSON
[npo] AT_2091794: Downloading Normaal stream JSON
[npo] AT_2091794: Downloading Laag stream JSON
[debug] Default format spec: bestvideo+bestaudio/best
[debug] Invoking downloader on u'npo+drm://internetvod.omroep.nl/AT_2091794'
ERROR: unable to download video data: <urlopen error unknown url type: npo+drm>
Traceback (most recent call last):
  File "/opt/lib/python2.7/site-packages/youtube_dl/YoutubeDL.py", line 1896, in process_info
    success = dl(filename, info_dict)
  File "/opt/lib/python2.7/site-packages/youtube_dl/YoutubeDL.py", line 1835, in dl
    return fd.download(name, info)
  File "/opt/lib/python2.7/site-packages/youtube_dl/downloader/common.py", line 364, in download
    return self.real_download(filename, info_dict)
  File "/opt/lib/python2.7/site-packages/youtube_dl/downloader/http.py", line 340, in real_download
    establish_connection()
  File "/opt/lib/python2.7/site-packages/youtube_dl/downloader/http.py", line 109, in establish_connection
    ctx.data = self.ydl.urlopen(request)
  File "/opt/lib/python2.7/site-packages/youtube_dl/YoutubeDL.py", line 2199, in urlopen
    return self._opener.open(req, timeout=self._socket_timeout)
  File "/opt/lib/python2.7/urllib2.py", line 429, in open
    response = self._open(req, data)
  File "/opt/lib/python2.7/urllib2.py", line 452, in _open
    'unknown_open', req)
  File "/opt/lib/python2.7/urllib2.py", line 407, in _call_chain
    result = func(*args)
  File "/opt/lib/python2.7/urllib2.py", line 1266, in unknown_open
    raise URLError('unknown url type: %s' % type)
URLError: <urlopen error unknown url type: npo+drm>

Description of your issue, suggested solution and other information
NPO has probably changed their format. Since 3 days programs via this site do not download anymore.

I understand that you are busy, but I'm busy too and still invested a few hours finding out where problems started and what could be related.
Why? Because it is open source and open source projects can use any help they can get.
So where is the original issue that is not a duplicate and not closed? For many, that's the only way to properly track progress and certainly not warrants a rude

Stop posting duplicates and wait for the next release.

It certainly is not just a breakage on the npo side, as https://github.com/rg3/youtube-dl/releases/tag/2018.02.11 works but https://github.com/rg3/youtube-dl/releases/tag/2018.02.22 fails.
I bit the bullet and did a git bisect based on https://stackoverflow.com/questions/4713088/how-to-use-git-bisect/4714297#4714297
So at least in part this is a regression, as this is the commit that started failing: https://github.com/rg3/youtube-dl/commit/ee706f1009a90e9911f31d01aa9eae41cc34e75b
Bisecting: 0 revisions left to test after this (roughly 0 steps)
[ee706f1009a90e9911f31d01aa9eae41cc34e75b] [npo] Improve quality metadata extraction

Once again: it's a breakage at npo side due to introducing npo+drm URL scheme after 2018.02.26 was released that is already fixed in d1b61870127fdee53147ac4c249af34a35562dbe. Regression is when something breakes due to your changes not due to changes of 3rdparties.


Download creates a folder instead of a file

Prerequisites

[X ] Put an X between the brackets on this line if you have done all of the following:

Checked that your issue isn't already filed: https://github.com/icetee/remote-ftp/issues

Description
When I download (by double clicking or right click > download), I get a local folder with the name of the remote file instead of the remote file. The folder itself is empty
Steps to Reproduce

Connect to remote server
Download file (double click or right click download)
When download is finished a local folder is made

Expected behavior: A local copy of the remote file is expected
Actual behavior: A folder is made with the name of the remote file (ie trying to download a remote file example.php creates a folder named example.php
Reproduces how often: 100%
Versions
Windows 10 Professional, fully updated
Atom    : 1.22.1
Electron: 1.6.15
Chrome  : 56.0.2924.87
Node    : 7.4.0
Remote-FTP: 2.0.0 (issue was present in 1.1.4 as well)
Additional Information
Sync local <- remote works as expected

I think related of #1026 so I close.
What is your ftp server type name? (vsftpd?)
Plain FTP or SFTP?


Add Chinese (Simplified)

This is not Chinese. This is simplified Chinese.

Note that zh is a two-letter code from ISO 639-1, and zho is a three-letter code from ISO 639-2. In fact they represent the same language. It may be inadvisable to use a code from ISO 639-2, inconsistent with other languages, as an identifier for traditional Chinese. Instead, using another tag (e.g. zh-HK, zh-Hant, etc.) might be more meaningful.
Reference: https://www.loc.gov/standards/iso639-2/php/code_list.php https://www.w3schools.com/tags/ref_language_codes.asp

@SOF3 does this seem good to you?

To be politically neutral, I suggest using zh-hans for simplified Chinese and don't have a default zh.


[Required] Document complete list of current maintainers, including names, contact information, domain of responsibility, and affiliation.

Maintainers:

Name
GitHub ID
Affiliation

Abhinandan Purkait
@Abhinandan-Purkait
DataCore Software

David Brace
@orville-wright
Minds DB

Niladri Halder
@niladrih
DataCore Software

Tiago Castro
@tiagolobocastro
DataCore Software

Vishnu Attur
@avishnu
DataCore Software

Special Maintainers:

Name
GitHub ID
Affiliation

Alexander Best
@Alex130469
DataCore Software

Mehran Kholdi
@semekh

Any thoughts on how to mention the domain of responsibility?

Trying to figure out how to best showcase that, atm it's scattered. Ex: Maintainers file mentions they are org-level maintainers, Special maintainers file mention they are maintainers of a particular part, ex: raw-file subproject.
I'm thinking about doing without the special maintainers, and just keep it all on these tables, wdyt?

https://github.com/openebs/community/pull/167


add Fiery  Distributed tracking system

Distributed tracking system

waiting the passed ....

Good job

This is your third PR for the same project.

yes sir~ will close this two……

ok the other closed……

This is a JAVA project...

sure but this project service for the php project ,i hava cpp version too. it's need more things such as kafka elasticsearch and librocksdb ....will open soon this version. this version  is tiny simple and easy for deploy good for the small business company

...


java.lang.RuntimeException: Cuda error in GSMat() too many resources requested for launch

Hi all,

I was using this AMI: http://tleyden.github.io/blog/2014/10/25/cuda-6-dot-5-on-aws-gpu-instance-running-ubuntu-14-dot-04/ for cuda environment on a aws gx2.2xlarge instance.

after download this bidmach bundle: http://bid2.berkeley.edu/bid-data-project/BIDMach_1.0.0-linux-x86_64.tar.gz, I scripts/getdata.sh download the data.

I stuck at nn.train method while training a sample data from movielens10M, see following:

Welcome to Scala version 2.11.2 (OpenJDK 64-Bit Server VM, Java 1.7.0_79).
Type in expressions to have them evaluated.
Type :help for more information.
scala> val a = loadSMat("data/movielens/train1.smat.lz4")
a: BIDMat.SMat =
(    172,  14574)      4
(    187,  14574)      4
(    195,  14574)      4
(    207,  14574)      4
(    215,  14574)      4
(    222,  14574)      3
(    224,  14574)      3
(    226,  14574)      3
...     ...     ...
scala> val (nn, opts) = NMF.learner(a)
nn: BIDMach.Learner = Learner(BIDMach.datasources.MatDS@36895c35,BIDMach.models.NMF@7404b78b,null,BIDMach.updaters.IncNorm@61ae422e,BIDMach.models.NMF$xopts$4@777b0c1b)
opts: BIDMach.Learner.Options with BIDMach.models.NMF.Opts with BIDMach.datasources.MatDS.Opts with BIDMach.updaters.IncNorm.Opts = BIDMach.models.NMF$xopts$4@777b0c1b
scala> nn.train
corpus perplexity=65134.014613
pass= 0
device is 0
java.lang.RuntimeException: Cuda error in GSMat() too many resources requested for launch
at BIDMat.GSMat$.apply(GSMat.scala:325)
at BIDMat.GSMat$.newOrCheckGSMat(GSMat.scala:480)
at BIDMat.GSMat$.newOrCheckGSMat(GSMat.scala:528)
at BIDMat.GSMat$.fromSMat(GSMat.scala:409)
at BIDMat.GSMat$.apply(GSMat.scala:330)
at BIDMach.models.Model$$anonfun$copyMats$1.apply$mcVI$sp(Model.scala:106)
at scala.collection.immutable.Range.foreach$mVc$sp(Range.scala:160)
at BIDMach.models.Model.copyMats(Model.scala:94)
at BIDMach.models.Model.doblockg(Model.scala:73)
at BIDMach.Learner.retrain(Learner.scala:83)
at BIDMach.Learner.train(Learner.scala:49)
... 33 elided

I got the same error on a different machine. It turns out the movielens dataset has many samples of all zeros - the first 14575 user entries are all zeros.
BIDMach takes the first minibatch of data (about 2000 samples on this dataset) and uses it to compute the density - i.e. non-zeros per column - for the dataset. That makes the assumption that hte data are stationary, which isnt true in this case.
There are a few workarounds - the first is to simply discard the first 14574 columns:
val aa = a(?,14574->a.ncols)
and then process aa. A more mathematically kosher way to do it is to randomize the columns so the data really are stationary.
val aa = a(?,randperm(a.ncols));
and then train on aa. Strictly speaking you should always randomize the columns of a dataset. In practice it often doesnt matter. Try both ways to be sure.


How to get started with NFT's (Non-Fungible Tokens)

We ask that you please be patient as our team works through approving and publishing all articles/tutorials in a timely manner. Allow 1-3 days for a topic to be reviewed and/or approved - allow 3-7 days for an articles to be reviewed and/or published.
Be sure to visit our Resources Page for tools, resources, and example articles to go over.
NOTE: (Please ensure that you have only one open issue + linked pull request at a time. This will ensure that we complete the article in a timely manner from inception to publishing.)
NOTE: We tend to stray away or tend not to publish reviews/comparisons of commercial product offerings.
We're looking for the first 2-3 paragraphs of the article that appropriately summarize what your article will be about.
Proposed title of article
How to Get started with NFT's (Non-Fungible Tokens)
Introduction paragraph (2-3 paragraphs):
A non-fungible token (NFT) is a unit of data stored on a digital ledger, called a blockchain, that certifies a digital asset to be unique and therefore not interchangeable. NFTs can represent items such as photos, videos, audio, and other types of digital files. What makes an NFT unique is the digital asset tied to the token.
This tutorial is on how blockchain developers, enthusiasts, investors, artists, musicians, etc can get started with NFT's (Non-Fungible Tokens). it also provides a guide on the basis and creation of an NFT on the Ethereum blockchain network.
Key takeaways:

What is an NFT
Uses of NFT
Creating an NFT using code
How to sell an NFT
Trends with NFT's

References:

https://en.wikipedia.org/wiki/Non-fungible_token#:~:text=A non-fungible token (NFT,other%20types%20of%20digital%20files.
https://ethereum.org/en/nft/
https://www.cnet.com/news/nfts-explained-these-expensive-tokens-are-as-weird-as-you-think-they-are/

Templates to use as guides

How To Guide Template
Software Review Template
Tutorial Template

to help avoid a backlog queue we are only accepting one article topic/pr approved at a time 👍
@Jethro-magaji


fix: support non-Primitive encodings for views

Fix issue that would pop up when canonicalizing a Null ConstantArray into VarBinView. We assume that we can immediately slice the views array. Now we handle the case where the views array is compressed (in this case, as a ConstantArray(0u8)).
I want to measure impact on TPC-H but I don't expect it to be significant

I've confirmed this passes compress_noci locally so that is nice.
However, this leads to a pretty substantial perf regression on TPC-H:

Wanna fix that before merging

Eh, the compiler really optimizes slices (and iteration over them) so anything that doesn't lower to a slice [...] will be slower

I continue to have wild swings in the benchmark results on my laptop. For example when I run q19 I continue to get anywhere from 230ms to 300ms, though mode is hovering around the 230ms which would not be a regression

You could get yourself two methods that check array encoding. I think this should be equivalent to what we had before but maybe the compiler is not quite capable

@robert3005 not sure I follow

I’m saying on top of existing method you could have an unsafe method that did what was happening previously and the caller would have to check the encoding. I think it really only matters in canonicalization?

I'm a be hesitant to specialize into_canonical based on if the child is already canonicalized or not since we don't really do that anywhere else.
Also I am getting much more consistent results running locally now than I previously was. I really don't know what's up with that. One change is that I'm not consistently running with taskpolicy -c utility which on macOS should force the process tree to use Performance Cores instead of Efficiency Cores.

FWIW I see similar levels of large +/- in runs on my laptop for develop as well

Great, ok. Benchmarking is hard


MSID: 94214 Version: 2 DOI: 10.1101/2<IP_ADDRESS>6478

MSID: 94214
Version: 2
Preprint DOI: https://doi.org/10.1101/2<IP_ADDRESS>6478
Step 1. Awaiting reviews
Editorial to post reviews via hypothesis
Useful links:

DocMap: https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v2/by-publisher/elife/get-by-manuscript-id?manuscript_id=94214
New model tracking: https://docs.google.com/spreadsheets/d/1_fHaoOy7hjyocptKtVJRijeNpUY4hBS7Ck_aVmx6ZJk/
Reviews on sciety: https://sciety.org/articles/activity/10.1101/2<IP_ADDRESS>6478

For trouble shooting (e.g. no Docmaps available):

DocMap issue addressing: https://miro.com/app/board/uXjVNCwK6EI=/
Explore DataHub DocMaps API: https://lookerstudio.google.com/reporting/4c2f0368-babb-4beb-b5b3-497e7e7b0f08/page/ejphD
Unmatched submissions and preprints: https://lookerstudio.google.com/u/0/reporting/9f86204f-3bf7-477c-9b18-5c5ef141bf69/page/p_gxi57ha93c
Unmatched manuscripts spreadsheet: https://docs.google.com/spreadsheets/d/15QcK8w-ssB7109RQEDtFpJPZ0J5HTGxoHa_2TtpMBbg/edit#gid=1336081641

Step 2. Preview reviewed preprint
Production QC content ahead of publication
Instructions:

QC preview: https://prod--epp.elifesciences.org/previews/94214v2
Update ticket with any problems (add blocked label)
When QC OK, add QC OK label to ticket and add publication date and time to https://docs.google.com/spreadsheets/d/1amAlKvdLcaDp5W8Z8g77NmkwbMF5n_u89ArSqPMO8jg
Move card to next column
(At end of the day post link in #enhanced-preprint and ask for PDF to be generated)

Useful links:

Preprint DOI :  https://doi.org/10.1101/2<IP_ADDRESS>6478
Confirm reviews returned by EPP: https://prod--epp.elifesciences.org/api/reviewed-preprints/94214/v2/reviews
To update the MECA path in the docmap: https://docs.google.com/spreadsheets/d/1mctCQuNFBjSn97Lihy7_vBO6z7-N-oqyLv4clyi6zHg

Step 3: Awaiting search reindex
This step adds the reviewed preprint to the homepage: https://elifesciences.org
The search reindex is triggered once an hour. We need the reviewed preprint to be indexed as the search application serves the journal homepage.
Useful links:

Jenkins pipeline to reindex search can be triggered sooner or monitored here: https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 4: Published! PDF requested
Waiting for PDF to be generated
Useful links:

PDF tracking: https://docs.google.com/spreadsheets/d/106_XeDjmuBae7gexOTNzg60lapeqjl2aRn9DzupGyS8/

Step 5: Introduce PDF to data folder and git repo
Upload PDF to relevent folder in git repo https://github.com/elifesciences/enhanced-preprints-data/
Step 6: Done!

[ ] Kettle is on!

@fred-atherden Please could you help with this? It's failing on Temporal saying the manifest is missing, even though it's definitely in the package:

No idea what's going on here, both child workflows are failing with that message (i.e. meca packages fro both the v1 and v2), despite the manifest file being available in both, and the one for the v1 being directly from bioRxiv.
Perhaps the error message is wrong and something else is actually causing the error?

Please could you ask the EPP team to take a look in #enhanced-preprint?

Issues have been resolved.


Button library improvements

Readability
I had a hard time following how this worked so...

variables were renamed
logic was simplified
comments were added

update() renamed to listener()
This may be pedantic (but most of programming is?) and I know we already changed it once.
We are not "updating" the button, we are adding a "listener" to a loop in our sketch.
If this is the only thing you're hung up on, I can revert this change.
Removed setup() in favor of doing button setup in the constructor
Previously this was an empty constructor and one would run setup(pin,callback,etc) in the arduino sketch setup function.
I think there are advantages to getting rid of the setup function.

declare and define the button right at the top of your sketch.
declutter the sketch's setup function
modify fewer lines of code to add/remove buttons from a sketch.

An example sketch
Examples>Button>Button.ino
I put a button example sketch in the example folder with my current understanding of best practices.
I updated the readMe file accordingly.
Since Arduino doesn't allow for relative library paths in the include statements, this must be modified to compile. :(
note: pass in a pointer to a function rather than putting a bunch of code in the button constructor (formerly in the sketch's setup function)!
Private variables
All variables were public, which I believe enables some bad coding practices.
If you want to know the state of the button use the function getState().  If you can see a reason to access the other variables involved please let me know and give an example.

@sanine-a I'm guessing you are not on board with all of these decisions (private vars, constructor vs setup). Next time we're both in the shop we can discuss this. Not sure if I made my case well above, and you may want to make the case for doing it a different way.
Merging this is not pressing. I'm happy to take the time to discuss changes as this should be something we all agree is useful.

@sanine-a I'm guessing you are not on board with all of these decisions (private vars, constructor vs setup). Next time we're both in the shop we can discuss this. Not sure if I made my case well above, and you may want to make the case for doing it a different way.
Merging this is not pressing. I'm happy to take the time to discuss changes as this should be something we all agree is useful.

I'm fine with either.  I've seen both ways, though I've seen most example
code written as below.
void func() {
//logic
}
https://www.smm.org/
David Bailey
Exhibit Fabricator IIII
e<EMAIL_ADDRESS>o:<PHONE_NUMBER>
On Thu, Jan 21, 2021 at 10:36 AM Brandon W. Kipp<EMAIL_ADDRESS>wrote:

@brandonwkipp approved this pull request.
Hey @eojreyem https://github.com/eojreyem
This looks like a good improvement over what we had before. Good job on
that front! It makes more sense to move all those variables over to
private scope and to have the setup function abstracted away like this.
I do have some questions about code styling. The curly bracket styling got
changed, which is fine and I feel like I've seen y'all use it regularly. I
think it would be good to commit to uniform styling to help make code
cleaner and easier to maintain. Would all of you agree this style of curly
brackets is how we collectively want to standardize our code in the future:
void func()
{
// logic
}
The other thing is listener name change. I think that name captures what
it is doing more, but if that's the case, we should make a ticket to
explicitly rename all of the libraries' update functions to listener.
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/scimusmn/arduino-base/pull/23#pullrequestreview-573517626,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALFATRNSTKOO6CPLLEWLLBTS3BJZJANCNFSM4WLG3QWQ
.

I'm fine with either.  I've seen both ways, though I've seen most example
code written as below.
void func() {
//logic
}
https://www.smm.org/
David Bailey
Exhibit Fabricator IIII
e<EMAIL_ADDRESS>o:<PHONE_NUMBER>
On Thu, Jan 21, 2021 at 10:36 AM Brandon W. Kipp<EMAIL_ADDRESS>wrote:

@brandonwkipp approved this pull request.
Hey @eojreyem https://github.com/eojreyem
This looks like a good improvement over what we had before. Good job on
that front! It makes more sense to move all those variables over to
private scope and to have the setup function abstracted away like this.
I do have some questions about code styling. The curly bracket styling got
changed, which is fine and I feel like I've seen y'all use it regularly. I
think it would be good to commit to uniform styling to help make code
cleaner and easier to maintain. Would all of you agree this style of curly
brackets is how we collectively want to standardize our code in the future:
void func()
{
// logic
}
The other thing is listener name change. I think that name captures what
it is doing more, but if that's the case, we should make a ticket to
explicitly rename all of the libraries' update functions to listener.
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/scimusmn/arduino-base/pull/23#pullrequestreview-573517626,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALFATRNSTKOO6CPLLEWLLBTS3BJZJANCNFSM4WLG3QWQ
.

Nice work @eojreyem. I'm curious, is listener() something you've seen somewhere out in the wild?
I think it might be a little misleading to use a noun as the method name. I understand by adding that line of code inside the main loop you are in essence creating a listener, but the function should be named to describe what it does each time it's called (e.g. listener() -> listen()) without assumption of how it will be used.
Also, I think what's nice about update is it signals which method is meant to be called every tick inside the main sketch loop, and I believe update is sort of a standard in functional programming. I'm totally fine switching update to listen, check, loop, or tick... but whatever we land on should become an expected method name across all the libraries. Curious to hear what @sanine-a thinks too.

Nice work @eojreyem. I'm curious, is listener() something you've seen somewhere out in the wild?
I think it might be a little misleading to use a noun as the method name. I understand by adding that line of code inside the main loop you are in essence creating a listener, but the function should be named to describe what it does each time it's called (e.g. listener() -> listen()) without assumption of how it will be used.
Also, I think what's nice about update is it signals which method is meant to be called every tick inside the main sketch loop, and I believe update is sort of a standard in functional programming. I'm totally fine switching update to listen, check, loop, or tick... but whatever we land on should become an expected method name across all the libraries. Curious to hear what @sanine-a thinks too.

As you reach agreements here please add any notes to our Code Style Guide article.
Please build off of the guides in the community. E.g., https://www.arduino.cc/en/Reference/APIStyleGuide

As you reach agreements here please add any notes to our Code Style Guide article.
Please build off of the guides in the community. E.g., https://www.arduino.cc/en/Reference/APIStyleGuide

Thank you guys for the feedback!
@brandonwkipp {} - That's something that hasn't been on our radar at all down here in the shop. I'm really enjoying using VSCode and using the C/C++ extension you found. I've grown so use to it formatting my code when I save that I now rely on ctrl+S to format rather than typing the indents myself.
I don't know what tools others are using if any. I can talk to Kate and Dave about this.
@tnordberg and @brandonwkipp  I think the convention that has informal agreement down in the shop was 'update'. Given Trygve's framing, I guess it isn't as inaccurate as I though. I'm going to revert that back to update.

Thank you guys for the feedback!
@brandonwkipp {} - That's something that hasn't been on our radar at all down here in the shop. I'm really enjoying using VSCode and using the C/C++ extension you found. I've grown so use to it formatting my code when I save that I now rely on ctrl+S to format rather than typing the indents myself.
I don't know what tools others are using if any. I can talk to Kate and Dave about this.
@tnordberg and @brandonwkipp  I think the convention that has informal agreement down in the shop was 'update'. Given Trygve's framing, I guess it isn't as inaccurate as I though. I'm going to revert that back to update.

I'd like to merge this week.  @sanine-a  do you have any feedback?

Do it!
https://www.smm.org/
David Bailey
Exhibit Fabricator IIII
e<EMAIL_ADDRESS>o:<PHONE_NUMBER>
On Wed, Feb 17, 2021 at 9:26 AM Joe Meyer<EMAIL_ADDRESS>wrote:

I'd like to merge this week. @sanine-a https://github.com/sanine-a do
you have any feedback?
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/scimusmn/arduino-base/pull/23#issuecomment-780632455,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALFATRN4G52QRYF4OPAY7OTS7PNZTANCNFSM4WLG3QWQ
.

My only feedback is that I agree with Brandon that we should standardize our curly bracket style. I'm partial to the brackets being on different lines because I think it helps serve to break up function declarations and their code blocks, and it makes formatting constructor initialization lists a little nicer, but those are purely aesthetic considerations and I'd be perfectly fine if we standardized in the other direction. (I might open an issue on this subject...) This looks great -- I vote merge it!

Kate,
Do you mean this:
void loop(){
}
or this:
void loop()
{
}
I feel like the first one is almost universally used in Arduino code
examples.
Dave
https://www.smm.org/
David Bailey
Exhibit Fabricator IIII
e<EMAIL_ADDRESS>o:<PHONE_NUMBER>
On Wed, Feb 17, 2021 at 9:49 AM sanine<EMAIL_ADDRESS>wrote:

My only feedback is that I agree with Brandon that we should standardize
our curly bracket style. I'm partial to the brackets being on different
lines because I think it helps serve to break up function declarations and
their code blocks, and it makes formatting constructor initialization lists
a little nicer, but those are purely aesthetic considerations and I'd be
perfectly fine if we standardized in the other direction. (I might open an
issue on this subject...) This looks great -- I vote merge it!
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/scimusmn/arduino-base/pull/23#issuecomment-780651345,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALFATRI4WBIUSK3ZBBCEKV3S7PQQJANCNFSM4WLG3QWQ
.

@sanine-a added a new issue to discuss the code style items more broadly here: https://github.com/scimusmn/arduino-base/issues/24
Just linking up in case anyone missed that.

I argue for keeping it on the same line.  In most Arduino sample code I've seen, it is on the same line.  If we use 3rd party libraries, as we often do, they typically use that formatting.


xSQLServerSetup: ADVANCEDANALYTICS feature needs its own licence acceptance switch

Details of the scenario you try and problem that is occurring:
xSQLServer installation with ADVANCEDANALYTICS in the features string
The DSC configuration that is using the resource (as detailed as possible):
foreach($SQLServer in $Node.SQLServers)
{
        $SQLInstanceName = $SQLServer.InstanceName

        $Features = "SQLENGINE,ADVANCEDANALYTICS,FULLTEXT,DQ,RS,SQL_SHARED_MR,DQC,CONN,IS,BOL,SNAC_SDK,MDS"

        if($Features -ne "")
        {
            xSqlServerSetup ($Node.NodeName + $SQLInstanceName)
                {
                    # DependsOn = "[WindowsFeature]NET-Framework-Core"
                    SourcePath = $Node.SourcePath
                    SourceFolder = $Node.SourceFolder
                    SetupCredential = $Node.InstallerServiceAccount
                    InstanceName = $SQLInstanceName
                    Features = $Features
                    SQLSysAdminAccounts = $Node.InsallerServiceAccount
                    InstallSharedDir = "C:\Program Files\Microsoft SQL Server"
                    InstallSharedWOWDir = "C:\Program Files (x86)\Microsoft SQL Server"
                    InstanceDir = "C:\Program Files\Microsoft SQL Server"
                    InstallSQLDataDir = "C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data"
                    SQLUserDBDir = "C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data"
                    SQLUserDBLogDir = "C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data"
                    SQLTempDBDir = "C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data"
                    SQLTempDBLogDir = "C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data"
                    SQLBackupDir = "C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data"
                    ASDataDir = "C:\Program Files\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Data"
                    ASLogDir = "C:\Program Files\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log"
                    ASBackupDir = "C:\Program Files\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Backup"
                    ASTempDir = "C:\Program Files\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Temp"
                    ASConfigDir = "C:\Program Files\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Config"
                }

Version of the Operating System, SQL Server and PowerShell the DSC Target Node is running:
OS: Windows Server 2012 R2
SQL Server: 2016 Developer Edition
DSC Target Node: 5.0.10586.117
Version of the DSC module you're using, or 'dev' if you're using current dev branch:
<IP_ADDRESS>

Looks like the switch is /IACCEPTREVOLICENSETERMS. This should be added if ADVANCEDANALYTICS is a feature.
https://msdn.microsoft.com/en-us/library/mt590808.aspx
I add this as a bug. Feel more like a bug than an enhancement. :)

@johlju I think it should be /IACCEPTROPENLICENSETERMS , it would be useful to add support for /MRCACHEDIRECTORY at the same time, to allow an install of the R Services without internet access.  Plainly, requires a previous process to put the R files in that location.  There's also Python support just added too, though perhaps that should be a different issue.

Yes you are right. I don't know what I copied in. Thanks for correcting me! 😄
I opened new issue for argument MRCACHEDIRECTORY in issue #588.
And pointed to the article for Python install in issue #555.

@marcinbojko yes none in the community has picked this one up and run with it so the issue still there.
I labeled this 'good first issue' since it's an easier addition to the resource (code change, adding tests and documentation).

@johlju Thanks, I've noticed. Just had some hopes though ;)

@marcinbojko I understand. 🙂 You are always welcome to give this a try your self, are you up to contribute here? 😃 I happy to help you get started, or if you get stuck.

@johlju Happy too, but I think my skillset is too low ;)

@marcinbojko if you like PowerShell and eager to learn your skill set is not to low. :)
To get started read Getting Started with GitHub to set up Git. Suggest you install Visual Studio Code with the PowerShell extenstion installed. After you forked (button top right on this page) then just do this.
mkdir c:\source
cd c:\source
git clone https://github.com/PowerShell/SqlServerDsc
cd c:\source\SqlServerDsc
git remote add my https://github.com/marcinbojko/SqlServerDsc
git checkout -b working-branch
code .

Now you have a clean working branch named 'working-branch' and ready to start changing and committing changes to your local working branch.
Push your working branch to your fork by running.
git push my working-branch

When you feel your finished. Got into your fork https://github.com/marcinbojko/SqlServerDsc and choose you working branch and click 'new pull request'.
Happy coding! 😃  Happy to help if you get stuck.

I am looking into fixing this issue, I was thinking that while fixing this, I could also look at adding support for using Parent feature parameter


Use Sensu Transport 7.0.2 for DNS resolver

This pull request bumps sensu-transport to 7.0.2 and fixes a client deregistration bug.

I like it!


Issue while using a token which is defined for a service account in a specific namespace

I've defined a service account and it has full access in its own namespace.
When I use its token to login in K8Dash, I see nothing! While I have to see pods, deploys, etc in its own namespace.
would you please help me with this issue?
Thanks in advance.

+1

@z-aslani I found a solution. Additionally to the rights in its own namespace you need to grant your service account the right to view the namespaces clusterwide. Then you can access the pods in its own namespace via the dashboard "namespaces" or "workloads" (where you have to select the own namespace in the drop down menu).
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: ns-viewer
rules:
- apiGroups: [""]
  resources: ["namespaces"]
  verbs: ["list"]


Configurable limit for number of tracks

applying a limit this way is pretty tricky. a few things:

the limiting factor for scaling is total outgoing bitrate: https://docs.livekit.io/deploy/benchmark#measuring-performance
this bitrate is impacted by # of tracks each subs are actively pulling in (for example, our example app is aggressively disabling tracks that are not visible, etc)
there's a significant difference between audio tracks, video tracks at 720p, video tracks at 360p, and so on.

it would be better to compute the limit based on ingress and egress bitrate

I think if users are deploying LK for a specific use case.. the track based approach may work reasonably well, since they have a specific use case of how their clients handle it.
My comment above is just thinking about serving different use cases from a single installation.
Also, when we deny the websocket connection, clients will call /rtc/validate to get an error message. We should display an appropriate error there so it's clear to clients why they couldn't connect.


Applicability is not observed when using doAfterVisit(Recipe)

As a follow up to #2999 in https://github.com/openrewrite/rewrite/pull/3006, I found that applicability is not observed when a Recipe instance is used with doAfterVisit(..). Said Recipe visitor is just pulled and used directly/immediately.

With the advent of Preconditions this now works as expected.


Move build-time dependencies to devDependencies

This might make some folks over at https://news.ycombinator.com/item?id=25471554 slightly happier.

Oop, my bad with the trailing comma...

lgtm - thanks! (and congrats on being the first contrib against cerulean!).
(normally we'd ask for DCO sign-off, but i'm going to assume you're not going to claim IP infringement over us merging a dep fix :D)

lgtm - thanks! (and congrats on being the first contrib against cerulean!).

Yay, no matter how trivial! Best of luck with the project 🥳

(normally we'd ask for DCO sign-off, but i'm going to assume you're not going to claim IP infringement over us merging a dep fix :D)

Yeah, no, no worries there. I was just annoyed with folks on HN complaining about the React dev dependency chain. After all, if you exhaustively counted all of the dependencies going into any other project... 🙄


Define Maven Tool in Jenkinsfile

[ ] This is used to specify the Maven tool by referring to its configured name (e.g., Maven 3.9.2) in the Jenkinsfile using the tool directive

ss


Installing arrow on ubuntu 20.04 is broken

Describe the bug, including details regarding any error messages, version, and platform.
I tried installing using instructions from this page https://arrow.apache.org/install/
sudo apt update
sudo apt install -y -V ca-certificates lsb-release wget
wget https://apache.jfrog.io/artifactory/arrow/$(lsb_release --id --short | tr 'A-Z' 'a-z')/apache-arrow-apt-source-latest-$(lsb_release --codename --short).deb
sudo apt install -y -V ./apache-arrow-apt-source-latest-$(lsb_release --codename --short).deb

And I get an error on the install.
 wget https://apache.jfrog.io/artifactory/arrow/$(lsb_release --id --short | tr 'A-Z' 'a-z')/apache-arrow-apt-source-latest-$(lsb_release --codename --short).deb
--2023-03-22 09:28:18--  https://apache.jfrog.io/artifactory/arrow/ubuntu/apache-arrow-apt-source-latest-focal.deb
Resolving apache.jfrog.io (apache.jfrog.io)... <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>
Connecting to apache.jfrog.io (apache.jfrog.io)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: https://landing.jfrog.com/reactivate-server/apache [following]
--2023-03-22 09:28:19--  https://landing.jfrog.com/reactivate-server/apache
Resolving landing.jfrog.com (landing.jfrog.com)... <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>
Connecting to landing.jfrog.com (landing.jfrog.com)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10612 (10K) [text/html]
Saving to: ‘apache-arrow-apt-source-latest-focal.deb’

apache-arrow-apt-source-latest-focal.deb     100%[=============================================================================================>]  10.36K  --.-KB/s    in 0.001s

2023-03-22 09:28:19 (16.6 MB/s) - ‘apache-arrow-apt-source-latest-focal.deb’ saved [10612/10612]

sudo apt install -y -V ./apache-arrow-apt-source-latest-$(lsb_release --codename --short).deb
Reading package lists... Error!
E: Invalid archive signature
E: Internal error, could not locate member control.tar.{zstlz4gzxzbz2lzma}
E: Could not read meta data from /home/emanuel/projects/apache-arrow-apt-source-latest-focal.deb
E: The package lists or status file could not be parsed or opened.

Everything worked just fine until 8h ago.
This is actually preventing me from deploying an application in production.
Component(s)
Other

Duplicate of #34675
Sorry for the inconvenience, the apache jfrog instance is down at the moment. We are waiting on feedback from the ASF infra team.

Similar thing happened here as well it looks like?
https://github.com/apache/arrow/issues/40744


SDK's should send metadata whenever they have it

We should send the metadata if the auth token profile exists, even if the endpoint doesn't require it. The server will simply ignore metadata that we don't need. This reduces complexity on the SDK side, as well as allows more auto generated template code.
Languages:

[x] .NET #829
[ ] CLI
[ ] Go
[ ] Java
[ ] Dart
[ ] Python
[ ] Ruby
[ ] Swift
[ ] Typescript

Per a comment by @tmarkovski in #829 , it seems we may want to not always send an auth header.
We do need to always send metadata, so that we can add additional metadata (IE #845), but we want to control whether or not we send an auth header.
We have two options in my view:

Always send auth header; force backend to deal with it.
(My preference) Add an authenticated: bool arg to each lang's BuildMetadata function.

Defaults to true
Not a huge deal to automate in protoc-gen-sdk

I've gone ahead with option #2 -- you can see the .NET implementation in #855
If we decide to go another route this can be easily changed.

The solution to #845 automatically solves this problem. Closing this as a duplicate.


Multiple listparts on a page

I have tried adding two new listparts (sales lines) to a new Listplus page. They are showing however they are both linked to each other and I need them to perform separately. Is this possible?

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

ID: 7f987e0c-ba34-f91e-dffc-a156ced6c02d
Version Independent ID: abb31fda-847c-4204-ad1f-0767a4b69e9a
Content: Page Types and Layouts - Business Central
Content Source: dev-itpro/developer/devenv-page-types-and-layouts.md
Service: dynamics365-business-central
GitHub Login: @jacobwj
Microsoft Alias: solsen

I have tried adding two new listparts (sales lines) to a new Listplus page. They are showing however they are both linked to each other and I need them to perform separately. Is this possible?

Post the code, so people can analyse whether it performs differently from the documented behaviour, otherwise this seems off-topic.

Thanks for the feedback. Please use Yammer or another group to ask this question, the repo is for documentation issues only on the currently released docs. Thanks.


zkasm: crude implementation of ineg

No test here as there isn’t really a wasm instruction that directly becomes ineg, except perhaps through optimizations. Best way to test this would be to have clift test instead, but we don’t have infrastructure for those targetting zkasm either.

I filed an issue for subtraction bugs at https://github.com/near/wasmtime/issues/81. Lets merge this for now to avoid the bitrot.


Fix the typo in readme.md

Subject of the issue
Fix the typo in readme.md and edit the 3rd and 4th steps of Installation procedure.

Thank You for the issue! Assigned!


Live Sass Compiler not work after update

hello, i just update live sass compiler extension and it's not working as previous version...
please let me know how to solve it

Can I see your settings.json file?

{
"sftp.downloadWhenOpenInRemoteExplorer": true,
"editor.wordWrap": "on",
"files.associations": {
".htaccess": "ini"
},
"liveServer.settings.donotShowInfoMsg": true,
"editor.renderWhitespace": "all",
"diffEditor.wordWrap": "on",
"liveSassCompile.settings.includeItems": [
"D:\Lab\js\jquery3.5.min.js"
],
"explorer.confirmDelete": false,
"terminal.integrated.confirmOnExit": true,
"terminal.integrated.cursorBlinking": true,
"terminal.integrated.environmentChangesIndicator": "on",
"workbench.startupEditor": "newUntitledFile",
"workbench.activityBar.visible": true,
"liveServer.settings.donotVerifyTags": true,
"workbench.editor.enablePreview": false,
"security.workspace.trust.untrustedFiles": "open",
"fontAwesomeAutocomplete.patterns": [
"/*.html",
"/*.php"
],
"git.autofetch": true,
"php.suggest.basic": false,
"editor.minimap.enabled": false,
"git.enableSmartCommit": true,
"git.confirmSync": false,
"security.workspace.trust.emptyWindow": false,
"editor.hover.enabled": false,
"liveSassCompile.settings.autoprefix": [
]

}

    "liveSassCompile.settings.includeItems": [
        "D:\\Lab\\js\\jquery3.5.min.js"
    ],

This is your problem line it seems. You are only telling the SASS compiler to compile a JS file. You'd need to either remove this line or change it to target the correct file

thanks glenn, I will try your advise

Great! Can you let me know how it goes so I/you can close the issue? Thanks in advance

I don't know where it came from, but I think it's from windows 10 update. but thank you very much, it's work well now

Glad it worked!!


A tutorial for deploying remote clients

There is no tutorial for deploying remote clients in the Hyperledger Caliper
Context

There is an abstract description in the official documentation site. However, it is not clear how to build actual remote clients across multiple machines for scale-out deployments.
Expected Behavior

There should be an example or tutorial for deploying remote clients.
Actual Behavior

Possible Fix

Please provide a step-by-step tutorial for deploying remote clients.
Thanks,

As an initial first step I plan to write an article about my experiences

A prototype tool to provision and setup a more suitable caliper environment for hyperledger fabric can be found here
https://github.com/davidkel/provision-performance


NPM copies .gitignore by default, and so it didn't include lib/

This adds an expliciti .npmignore, so it doesn't copy .gitignore

(This broke my build tonight :sob:)


FIFA 14 [PCSE00263]

App summary

App name: FIFA 14
App serial: PCSE00263
App version: 1.00

Vita3K summary

Version: v0.1.6
Build number: 3038
Commit hash: https://github.com/vita3k/vita3k/commit/08dec7ca
CPU backend: Dynarmic
GPU backend: Vulkan

Test environment summary

Tested by: Tenkoouu
OS: Windows 10
CPU: intel i5-10210U
GPU: intel UHD Graphics
RAM: 8 GB

Issues

Audio crackle
Graphics issues

Screenshots

Log
vita3k.log
Recommended labels

https://github.com/Vita3K/compatibility/labels/Ingame -
https://github.com/Vita3K/compatibility/labels/graphics bug
https://github.com/Vita3K/compatibility/labels/audio quality

Can someone test it now?

Can someone test it now?

I just tested it and uhh


@kanaabe => [Newsfeed QA] Fix header top position

Bumps reaction and uses the new positionTop prop for NewsNav to fix header position bug.

@eessex I'm not seeing the nav on the latest Reaction 0.34.3. Do you see it locally?


onEvent override

Hi,
If i override onEvent method, sticky events happens twice.
Example:
class A {
    public void onEvent(Foo bar) {
        dialog.dismiss();
    }
}

class B extends A {
    @Override
    public void onEvent(Foo bar) {
        super.onEvent(bar);
        Log.i("Event", "Foo");
    }
}

I see log I/Event﹕ Foo twice...

looks like a bug.

implementation error. don't call super

@andreas- method calling twice because of I call super!? It makes no sense

do you guys have resolved this issue? i'm using 2.4.0? is this issue resolved on 2.4.1? 3.0.0?


Problem with qiita_env make

Calling qiita_env make --add-demo-user --load-ontologies --download-reference will fail with the following traceback:
  File "/Users/yoshikivazquezbaeza/git_sw/qiita/scripts/qiita_env", line 157, in <module>
    env()
  File "/Users/yoshikivazquezbaeza/.virtualenvs/qiita/lib/python2.7/site-packages/click/core.py", line 610, in __call__
    return self.main(*args, **kwargs)
  File "/Users/yoshikivazquezbaeza/.virtualenvs/qiita/lib/python2.7/site-packages/click/core.py", line 590, in main
    rv = self.invoke(ctx)
  File "/Users/yoshikivazquezbaeza/.virtualenvs/qiita/lib/python2.7/site-packages/click/core.py", line 936, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/Users/yoshikivazquezbaeza/.virtualenvs/qiita/lib/python2.7/site-packages/click/core.py", line 782, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/yoshikivazquezbaeza/.virtualenvs/qiita/lib/python2.7/site-packages/click/core.py", line 416, in invoke
    return callback(*args, **kwargs)
  File "/Users/yoshikivazquezbaeza/git_sw/qiita/scripts/qiita_env", line 71, in make
    make_environment(load_ontologies, download_reference, add_demo_user)
  File "/Users/yoshikivazquezbaeza/git_sw/qiita/qiita_db/environment_manager.py", line 222, in make_environment
    _download_reference_files(conn)
  File "/Users/yoshikivazquezbaeza/git_sw/qiita/qiita_db/environment_manager.py", line 147, in _download_reference_files
    files['taxonomy'][0], files['tree'][0])
  File "/Users/yoshikivazquezbaeza/git_sw/qiita/qiita_db/reference.py", line 75, in create
    "filepath", conn_handler)[0]
  File "/Users/yoshikivazquezbaeza/git_sw/qiita/qiita_db/util.py", line 622, in insert_filepaths
    dd_id, mp = get_mountpoint(table)[0]
  File "/Users/yoshikivazquezbaeza/git_sw/qiita/qiita_db/util.py", line 564, in get_mountpoint
    basedir = get_db_files_base_dir()
  File "/Users/yoshikivazquezbaeza/git_sw/qiita/qiita_db/util.py", line 414, in get_db_files_base_dir
    "SELECT base_data_dir FROM settings")[0]
  File "/Users/yoshikivazquezbaeza/git_sw/qiita/qiita_db/sql_connection.py", line 519, in execute_fetchone
    with self._sql_executor(sql, sql_args) as pgcursor:
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "/Users/yoshikivazquezbaeza/git_sw/qiita/qiita_db/sql_connection.py", line 335, in _sql_executor
    (sql, str(sql_args), e)))
qiita_db.exceptions.QiitaDBExecutionError:
Error running SQL query: SELECT base_data_dir FROM settings
ARGS: None
Error: relation "settings" does not exist
LINE 1: SELECT base_data_dir FROM settings

If you read the traceback, the problem is pointing to settings not existing in the database, however if you open a python session and try to use the function that's failing, you won't be able to reproduce the error:
In [1]: from qiita_db.util import get_db_files_base_dir

In [2]: get_db_files_base_dir()
'some path'

@josenavas suggested that this might be due to some uncommitted changes in the SQL connection, or maybe something else related to the fact that we only have one connection.

I think the issue is this line: https://github.com/biocore/qiita/blob/master/qiita_db/environment_manager.py#L180
Since that connection is open with the database, we need to explicitly close that one, so any further connection to the DB re-opens it with a non-admin connection to a database.

Ah, that makes sense, let me try it out in my system.
On (May-28-15|12:29), josenavas wrote:

I think the issue is this line: https://github.com/biocore/qiita/blob/master/qiita_db/environment_manager.py#L180
Since that connection is open with the database, we need to explicitly close that one, so any further connection to the DB re-opens it with a non-admin connection to a database.

Reply to this email directly or view it on GitHub:
https://github.com/biocore/qiita/issues/1216#issuecomment-106573624

I tried doing admin_conn.close() right before del admin_conn, but that
didn't seem to work either, so I'm not sure what's going on.
On (May-28-15|12:29), josenavas wrote:

I think the issue is this line: https://github.com/biocore/qiita/blob/master/qiita_db/environment_manager.py#L180
Since that connection is open with the database, we need to explicitly close that one, so any further connection to the DB re-opens it with a non-admin connection to a database.

Reply to this email directly or view it on GitHub:
https://github.com/biocore/qiita/issues/1216#issuecomment-106573624

Note that if I move the code, it the problem is not present anymore (not a real fix of course, but it's good to know):
diff --git a/qiita_db/environment_manager.py b/qiita_db/environment_manager.py
index 3fec1da..dc06373 100644
--- a/qiita_db/environment_manager.py
+++ b/qiita_db/environment_manager.py
@@ -209,6 +209,9 @@ def make_environment(load_ontologies, download_reference, add_demo_user):

     create_layout_and_patch(conn, verbose=True)

+    if download_reference:
+        _download_reference_files(conn)
+
     if load_ontologies:
         _add_ontology_data(conn)

@@ -218,9 +221,6 @@ def make_environment(load_ontologies, download_reference, add_demo_user):
         ontology = Ontology(convert_to_id('ENA', 'ontology'))
         ontology.add_user_defined_term('Amplicon Sequencing')

-    if download_reference:
-        _download_reference_files(conn)
-
     # we don't do this if it's a test environment because populate.sql
     # already adds this user...
     if add_demo_user and not qiita_config.test_environment:

That is really interesting! Something in the ontology code?

Are you sure that this line issues a commit?

All the execute calls in the SQLConnectionHandler commit, that's why we needed to create the queues.

Why the autocommit then?

Actually, suspect this line may be the issue. __del__ is not defined, so it is not explicitly closing the connection. Recommend using conn.close() as del will rely on the gc and this previously caused problems. We had to remove __del__ as the destructor was always closing the connection so we weren't getting the benefit of retaining a single open connection

You're right. We had the __del__ defined before, but when we changed to a single connection, we remove that code. We should probably create a close function in the connection handler, so we can close the connection without accessing any to its attributes.

there is one...

Just to follow up, the method is here

This is still a problem and calling the close method doesn't work. At this point the solution is still to swap these statements as in the patch that I posted earlier in this thread. Would anyone oppose to me making that change and keep this issue open until we can figure out what the source of the error is?

Closing as the DB connection code has been improved multiple times since this issue was opened and we haven't seen this error in a really long time; please open another issue if it happens again.


Reenable testing pypy on travis

FWICS testing pypy* was disabled because of very old version on Travis.
It's been updated since, so let's try reenabling it.

Codecov Report

Merging #276 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #276   +/-   ##
=======================================
  Coverage   84.28%   84.28%
=======================================
  Files           7        7
  Lines         719      719
=======================================
  Hits          606      606
  Misses        113      113

Continue to review full report at Codecov.

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