Set up "repo-tools" project to register Git hooks for Prettier

@g-chao

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


[Feature Request] Add the ability to specify import syntax for different imports

Currently say if you want to type hint a dict or a list etc, and you don't have that import currently pylance will import it for you, however it imports as from typing import Listwhich can get long and tedious. When really I want the autoimport to be
import typing as t
then the autocomplete would be
foo: t.List[some_type] = []
I propose a way to configure different imports to behave in different manners on auto import. This is somewhat similar to #8 however, I am proposing to make it user defined and extensible.

This issue has been open for nearly a year and has not received enough upvotes to prioritize this work. I'm going to close this for now but I'm happy to revisit if we see this becoming a theme in opened issues.


Update Build Instructions

This uses an old Gradle wrapper and an old Android Plugin for Gradle. Update these to something more current.

Pushed changes to master.


Automatic Connection to OpenHAB after Start

Currently when Homebridge-openhab starts it tries to connect to Openhab server only once. If Openhab is not running yet (typically at start), homebridge stops and service needs to be restarted manually. Other workaround is to start homebridge from openhab script, which is also not good.
It would be good if Homebridge-openhab would try to connect to openhab continuously and automatically without requirement for user intervention.

The solution in #30 works fine for myself and at least one other user :)
You can also set up some switches to fire off the restart commands and put them in a sitemap (I use a separate "admin" one for system related stuff)
Though 99% of the time restarting the service (#30) once openHAB has kicked in usually works fine.
Switch execStopHB    "Stop Homebridge"     { exec="ON:sudo systemctl stop homebridge", autoupdate="false" }
Switch execStartHB   "Start Homebridge"    { exec="ON:sudo systemctl start homebridge", autoupdate="false" }
Switch execRestartHB "Restart Homebridge"  { exec="ON:sudo systemctl restart homebridge", autoupdate="false" }


Bug report: The panel show "No requests have been detected" when the  api ends with .json.

Describe the bug
the panel show "No requests have been detected" when the api ends with .json.
For example, Shopify's API ends with .json, you can view its documentation: https://shopify.dev/docs/api/storefront

To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Chrome Version [e.g. 22]

Additional context
Maybe it's because of this code:
graphql-network-inspector/src/helpers/networkHelpers.ts:52
export const urlHasFileExtension = (url: string): boolean => {
  // Check if URL ends with a file extension (e.g. .js, .css, .png)
  const urlParts = url.split('/')
  const lastPart = urlParts[urlParts.length - 1]
  return lastPart.includes('.')
}
...

if (urlHasFileExtension(details.request.url)) {
        return
      }

Thanks for raising. This is fixed in https://github.com/warrenday/graphql-network-inspector/pull/163
Will be in next release.


Web: Extension host fails to initialize when certain browser extensions are installed

The root cause is that the init message first sent to an extension host worker might be preceded with messagse sent by various browser extensions, since they have access to the DOM and can (and will) freely call postMessage on iframes they find.

Fixed by https://github.com/microsoft/vscode/commit/2e9ed4340092ab9a879d2e07b4ad8e52be31188f

Speculation on why Stylebot breaks it:

https://cs.github.com/ankit/stylebot/blob/4d6c30276ca4ea6ff525b392c5dd8a1e2f961196/src/editor/components/TheCodeEditor.vue#L65

Anyway the two editors could interfere, @alexdima?

Who knows 🤷 . The standalone editor doesn't ship a web worker extension host, so my best guess is that an unexpected postMessage was causing this.


Feat: Adding Top TV shows in IMDB scrapper

Describe the feature
I would like to add a method in the IMDB class, scraping top tv shows.
Add ScreenShots

Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC 23 contributor
[X] I want to work on this issue

Go ahead @Juhibhojani |
IMBD module is already there, add the functionality you want as a method only.

@nikhil25803, the top_rated method isn't working here.


restart: no gets interpreted as restart: false

The yaml parser seems to turn restart: no into restart: false and
false is not a valid restart policy.  This patch manually fixes up the
value to be no if it is read as false.
This is based off of #66 because in that PR I added merge_test.go and didn't want to duplicate it and then have to deal with merge conflicts/rebasing.

@dnephin @vdemeester

@vdemeester Fix compilation errors with Merge/mergeProject

So, we are ok to merge this as is and we'll get back on it when validation hits, right ? (thus we follow docker-compose < 1.5 behavior)

@vdemeester I believe that is the agreement.  I've created an issue to track this: https://github.com/docker/libcompose/issues/72

I think the reason this doesn't fail validation in compose 1.4.2 is because the check if not restart_config:, so compose actually things there is no config instead of translating it.
I'm not against merging this, but it will become dead code as soon as #34 is implemented

Not against either :wink:
LGTM 🐸

documentation still suggest unquoted version:
https://docs.docker.com/compose/compose-file/compose-file-v2/#restart

and that results failure on 1.9.0:
# grep restart docker-compose.override.yml
    restart: no

# docker-compose ps
ERROR: The Compose file './docker-compose.override.yml' is invalid because:
services.weblate.restart contains an invalid type, it should be a string

@glensc hum this PR is quite old though, we have schema validation now, that should be the same as docker-compose, I would guess it's doing the same with libcompose 👼


leverage Intermediate -result

speed up HPO with intermediate result

@suiguoxin - please add more details about how this HPO is designed and will be implemented for others' reference.


How to locate flutter crash when flutter is integrated into an existing project

Is there any way to locate the crash in dart code?

Flutter includes two parts:
For engine crashes:
refer https://github.com/flutter/flutter/wiki/Crashes

Just catch them, report to the server and analyze(symbolicate) as what's done in ios and android native before.
For dart part exceptions: pay attention to three ways:
1.  runZoned((){
    runApp(MyApp());
  },onError: (Object o, StackTrace s){
    print("OnError1:"+o.toString()+" "+s.toString());
  });
2.oid onErrorOccured(FlutterErrorDetails details){
  print("OnError2:"+details.toString());
}

void main(){
  FlutterError.onError=onErrorOccured;
3.Isolate.current.addErrorListener(new RawReceivePort((dynamic pair) async

Visit the documentation for these function for more.
Just catch them(exceptions only, won't crash), report it to the server with callstack info.
Closing this issue now.


Fix small bugs

Related Issue

closes #383
Description

Changelog

FIX: typo in Phoneme
FIX: incorrect property descriptions in Annotation

Pull Request Checklist

[x] Open an issue for the change, if one is not open already. NOTE: It is a good idea to wait until your suggested change is approved by a maintainer before writing any code.

[x] Make changes to the schemas or code. The schemas are located in /schemas/yaml. Do not update the schemas in schemas/json, or your changes will be overwritten.

[x] Update the "description" field of any schemas / properties that you change.

[x] Update examples in the affected schemas to reflect the changes you made.

[x] Build the project (npm run build)

[x] Run the tests (npm test) and fix issues that arise. If you find an issue that is unrelated to the one you are working on, open a new issue for it.

[x] Update the project documentation (README.md, CONTRIBUTING.md, etc.) to reflect the changes you made, if applicable.

[x] Build the project documentation (npm run docs) and then inspect it for your changes (open docs/index.html)

 [format] fix small bugs


Course Statistics Subpage does not get automatically refreshed

Describe the bug

The bug was found in a testing session here: https://github.com/ls1intum/Artemis/pull/2575#pullrequestreview-559141320 .
Apparently the score page in the course overview does not automatically get refreshed when a score update happens.
To Reproduce
During testing of exercises with different combinations of normal and bonus points [(10, 0), (10, 10), (0,0), (0,10)] this bug occurred. After creating, editing and assessing the four of the programming exercises with those combinations and during repeating the same process with modelling exercises, the bug could be observed.
Expected behavior

Statistics Page should be updated and without having to press the refresh button
Screenshots

Environment

 - OS: [e.g. iOS]
 - Browser [e.g. chrome, safari]
 - Version [e.g. 22]

Additional context

Output in Web Console

  [REPLACE THIS WITH YOUR INFORMATION]

Some notes: it should be updated (potentially in the background), when new results are sent to the client using web sockets.


Add msds sigma aldrich dataset

@AdrianM0 I remember that you still wanted to do some rephrasing. Did you have a chance to look into this?

I checked ChatGPT for this, but I would just write templates by hand and then just apply them to all the others with a loop.

Will add some now


Move to qrcode

from qr-image to https://github.com/soldair/node-qrcode

it's all-in-one library, so I don't use it.


Using "then ()" in "interactive Transactions" initiates another transaction

Bug description
In following code, txid1 and txid2 have different value.
  await prisma.$transaction(async (prisma) => {
    const txid1 = await prisma.$queryRawUnsafe('SELECT txid_current()')
    const txid2 = await prisma.$queryRawUnsafe('SELECT txid_current()').then()
  })

How to reproduce
Execute following code in postgres
  await prisma.$transaction(async (prisma) => {
    const txid1 = await prisma.$queryRawUnsafe('SELECT txid_current()')
    const txid2 = await prisma.$queryRawUnsafe('SELECT txid_current()').then()
  })

Expected behavior
txid1 and txid2 should be same value
Prisma information
datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

generator client {
  provider = "prisma-client-js"
  binaryTargets = ["native", "rhel-openssl-1.0.x"]
  previewFeatures = ["interactiveTransactions"]
}

Environment & setup

OS: Mac OS
Database: PostgreSQL
Node.js version: v14.17.3

Prisma Version
prisma                  : 3.2.1
@prisma/client          : 3.2.1
Current platform        : darwin-arm64
Query Engine (Node-API) : libquery-engine b71d8cb16c4ddc7e3e9821f42fd09b0f82d7934c (at<EMAIL_ADDRESS>Migration Engine        : migration-engine-cli b71d8cb16c4ddc7e3e9821f42fd09b0f82d7934c (at node_modules/@prisma/engines/migration-engine-darwin-arm64)
Introspection Engine    : introspection-core b71d8cb16c4ddc7e3e9821f42fd09b0f82d7934c (at node_modules/@prisma/engines/introspection-engine-darwin-arm64)
Format Binary           : prisma-fmt b71d8cb16c4ddc7e3e9821f42fd09b0f82d7934c (at node_modules/@prisma/engines/prisma-fmt-darwin-arm64)
Default Engines Hash    : b71d8cb16c4ddc7e3e9821f42fd09b0f82d7934c
Studio                  : 0.435.0
Preview Features        : interactiveTransactions

Is it intentional to use await and then on the same Prisma query?
Besides that it creating another transaction is indeed weird and unexpected of course.

Yes, it is intentional.
Actual code is like this.
const serviceMenuDefId = 1
await prisma.$transaction(async (prisma) => {
  const serviceMenuDef = await prisma.serviceMenuDef.findUnique({where : {id : serviceMenuDefId}} )
  const serviceMenus: Array<ServiceMenuType> = await prisma.serviceMenu.findMany({ where : { type : serviceMenuDef.type }}).then((menus) => {
    return menus.map((menu) => Object.assign(menu, { children: [] }))
  })
}

It does not work in same transaction.
I know the following code does work in same transaction, but I feel it is redundant.
const serviceMenuDefId = 1
await prisma.$transaction(async (prisma) => {
  const serviceMenuDef = await prisma.serviceMenuDef.findUnique({where : {id : serviceMenuDefId}} )
  const tmpServiceMenus: Array<ServiceMenu> = await prisma.serviceMenu.findMany({ where : { type : serviceMenuDef.type }})
  const serviceMenus: Array<ServiceMenuType> = tmpServiceMenus.map((menu) => Object.assign(menu, { children: [] }))}


⚠ Bofrost.nl has degraded performance

In 7efea9e, Bofrost.nl (https://www.bofrost.nl) experienced degraded performance:

HTTP code: 200
Response time: 2426 ms

Resolved: Bofrost.nl performance has improved in 60bf6f7.


Can't use motion-cocoapods on motion-game template

after add
gem 'motion-cocoapods'
to my gemfile
rake pod:install
rake aborted!
Don't know how to build task 'pod:install' (see --tasks)

Any way to integrate cocoapods to ios games?

anyone?

This is not implemented, but it shouldn't be hard to add, feel free to contribute a patch :)

Well I'm not really an expert on this, but if u can explain a little as you would, I'll try gladly, Greetings

I have not thought of the best way to implement this, but here's some info that could be useful:
We generate a shortcuts.rb file, which simply create namespaced rake commands which forwards the rake commands to the corresponding platforms.
Here's the script used to generate shortcuts.rb:
https://github.com/HipByte/motion-game/blob/master/Rakefile#L272-L290
And here's shortcuts.rb:
https://github.com/HipByte/motion-game/blob/master/lib/motion-game/shortcuts.rb
Ideally the solution should allow to forward arbitrary rake commands to each platform simply using the namespace, e.g.:
rake ios:pod:install
Let me know if you have any questions :)

Also maybe you should look at https://github.com/HipByte/Flow because if I'm not mistaken we do support this functionality (and the project has a similar architecture as motion-game).


Wrong include on Linux

I cloned it to my addons-folder on my arch setup, and needed to change all #include "Box2d/Box2d.h" to #include "Box2d.h" for it to be found. It was a quick fix locally, but others will probably encounter the same problem.
Is this only on Linux, and if so — why? I can fork and pull request a fix (with #ifdef TARGET_LINUX). but not sure on which systems this is a problem.

Ah, wait, sorry, it seems to be fixed here: https://github.com/vanderlin/ofxBox2d/pull/84
Hope it gets pulled soon.


Implement delete function for profile

Pull Request
Created delete functionality for profile
Description

Created button to delete
Created a confirmation modal to confirm deletion

Related Issue(s)
#68
Changes Made
Updated UI for edit profile, implemented delete user functionality
Screenshots (if applicable)
Delete button:

Confirmation modal:

Checklist

[x] I have checked that the changes included in the PR are intended to merge to master or any destination branch.
[x] I have verified that the new changes do not break any existing functionalities, unless the new changes are intended and have approved by the team.
[x] I will take care of the merging and delete the side-branch after the PR is merged.

Additional Notes/References

I will merge this after merging ly's PR, thanks @tryyang2001!


favicon is missing

favicon is missing from the webpage.
may I add it ?

#Edit: I meant to say that the statement
<link rel="icon" type="image/x-icon" href="path/to/favicon.ico">

is missing from index.html and must be added. :D

Sure, go ahead. Don't forget to add relevant screenshot!

@mbad0la close it and merge the pr?

Yeah.


(maint) pdbbox-init: use mktemp for all auth data

Using install may have been fine, but the handling of permissions is
not documented, and install might not be as portable, so just rely on
mktemp, which we already require, and which at least Linux and OpenBSD
does explicitly document the handling of permissions.

CLA signed by all contributors.


Whitespace removed on Macro #Preview in SwiftUI

Hi, I have an unstable behaviour over this macro in SwiftUI
In one Mac, swift format removes the space between the macro and the {, while in other Macs the space remains.
We all have the same branch and same XCode version.
One Mac:
#Preview{
Other Macs:
#Preview {
Could you please tell me how to set the rule correctly in all Macs in case this is not a issue?
$ swift-format --version
508.0.1

XCode: Version 15.0
Thank you

Not a problem any more.


restructuring: place each extension into its own directory

remove nbextensions/usability/hide_input.js, which is a duplicate of nbextensions/usability/hide_input/hide_input.js

Much needed. Thanks for taking care of this.

You're welcome :) it was niggling a little.
On 10 Sep 2015 4:22 pm, "Juergen Hasch"<EMAIL_ADDRESS>wrote:

Much needed. Thanks for taking care of this.
—
Reply to this email directly or view it on GitHub
https://github.com/ipython-contrib/IPython-notebook-extensions/pull/295#issuecomment-139278373
.


Override doesn't compose

Issue description
Calling override on an already overriden value seems to override the base value, instead of the result of the first override.
Steps to reproduce
Run nix-instantiatiate --eval on this file:
let
  pkgs = import <nixpkgs> {};

  hp = pkgs.haskell.packages.ghc7103;

  o1 = hp.override {
    overrides = self: super: {
      a = "hello";
    };
  };

  o2 = o1.override {
    overrides = self: super: {
      b = super.a;
    };
  };

in

  o2.b

Expected result
"hello"
Actual result
error: attribute ‘a’ missing, at /path/to/override.nix:14:11 (use ‘--show-trace’ to show detailed location information)
Technical details

Nix version: nix-env (Nix) 1.11.2
Nixpkgs version: 16.09pre83147.df89584

i think the issue is a conflict between how .override normally works, and how the haskel packages are using it
normally, you have different arguments going to override, and want to keep the latest value of each, but haskel is putting everything into a single overrides argument

I couldn't find the place in nixpkgs where .override is being defined for haskell packages. Is this a simple fix, or something deeper?
@peti, it would be great to get your input on this too.

It is true that overrides don't compose in the way you'd expect them to work in your example code. To make that happen, override would have to re-define itself on the overriden package set to take history into account, i.e. super would have to turn into a stack of values, possibly with some kind of super member so that super.super would allow you to move up the stack. I guess it's doable ... but I'm not sure whether it's worth the effort and added code complexity. Personally, I've never actually needed nested overrides, so I've never bothered to implement anything like this. If you have a compelling use-case, then I'd certainly be interested to know.
Anyway, if you'd like to see the override implementation, a good place to start is the makeOverridable function in lib/customisation.nix.
I hope this helps.

My use case for this is maintaining a custom set of Haskell packages on top of the set provided by nixpkgs. At the moment the package set contains mypkgs.haskellPackages which is generated by overriding nixpkgs.haskellPackages. It's sometime necessary to temporarily override other packages where this package set is being used. This issue makes mypkgs.haskellPackages behave very differently to nixpkgs.haskellPackages, i.e. it can't be a drop in replacement for any code which requires overriding haskellPackages.
Given the confusing nature of haskellPackages.override currently it might be a good idea to remove it from an already overriden package set.
The workaround I'm using at the moment is to pass in an extraHaskellOverrides attribute to mypkgs when it's created, which is merged into overrides when nixpkgs.haskellPackages is overriden.
I'm sure I've seen this workaround being used elsewhere when I was investigating this. But I can't seem to find it at the moment.

My use case for this is maintaining a custom set of Haskell packages on top of the set provided by nixpkgs.

Well, can you be a little more specific than this? What exactly are you doing that would be easy with stacked overrides but that is hard now without them?

The overrides to create this custom set are changing the version of a few packages compared to what's in nixos-16.03 and adding several packages which are not in hackage. I also do builds with mkDerivation overriden to help generate a local hoogle server.
Any of the use cases for .override such as changing the source for a package, or compiling things with profiling enabled are harder because the package set we're compiling against has already been overriden.
Using the extraHaskellOverrides workaround is not difficult to use, but it's a shame to lose the consistency which would be afforded by being able to stack overrides.

I am sorry, but these abstract descriptions are really hard for me to follow.  I do all the things you describe there, too, and I have no trouble with the absence of a composable  override as you seem to have. Would you mind sharing a specific piece of source code that illustrates the problem you're having?

sure thing. I'll try and post something this weekend.

@peti I'm also attempting to compose multiple overrides, is there a solution for this these days? My situation is like the following:
{ pkgs_old ? import ./pinned-pkgs.nix { }
, compiler ? "ghc843"
}:

let
  overrides1 = new: old: {
    my_new_pkg1 = ...;
    my_new_pkg2 = ...;
  };

  myHaskellPackages = pkgs_old.haskell.packages."${compiler}".override {
    overrides = overrides1;
  };

  brokenHaskellPackages = myHaskellPackages.override {
    overrides = new: old: {
      my_new_pkg2 = pkgs_old.haskell.lib.markBroken old.my_new_pkg1
    };
  };

  config = {
    packageOverrides = pkgs: rec {
      haskellPackages = brokenHaskellPackages;
    };
  };

  nixpkgs = builtins.fromJSON (builtins.readFile ./nixpkgs.json);

in import (pkgs_old.fetchFromGitHub {
  owner = "NixOS";
  repo  = "nixpkgs";
  inherit (nixpkgs) rev sha256;
}) { inherit config; }

I can attempt to build my_new_pkg2, after which I receive the expected error, but I can't build my_new_pkg1 (it's missing from the selection path).
The use case is that I'm incrementally developing a large custom Haskell package set. I don't want to have to remove my_new_pkg2 completely, just quickly and temporarily mark it as broken.

I am also attempting to stack multiple overlays/overrides. Here is my user story:
I work on a development team and we want an overlay for our project and its dependencies. This works fine using overlays + override. Let's call that overlay development.nix.
But when developers have a package checked out locally, they'd like to be able to override some of those packages a second time so that the local version is built instead. So let's call that local.nix.
If I attempt to use both overlays, one completely overrides the other.
I can work around this by having development.nix explicitly import local.nix.
But it is still a bit disappointing that I need to create an adhoc solution to this problem and that the 'obvious' thing of just importing additional overlays does not work.


Use this with SASS/LESS?

This looks awesome, first of all.
Secondly, I'm doing all of my development work using SASS. Think it'd be possible to update the SASS file (that compiles into the CSS we edit in chrome devtools), instead of the raw CSS? That'd be so awesome.

I guess that would be really hard to do. I have to dig how FireSASS work.

Agreed it would be hard to do, but this would be amazing. First off Chrome would need to locate the SCSS file so thats an issue, then recompile to css, and then reload the window on the fly. This would be the absolute greatest thing ever if it could be pulled off. Can we submit a request to google for a feature on this?

Locating SCSS files probably the easiest thing here. There is a sourceURL for JavaScript. We could use something like this for CSS.
Mozilla and Google work on Source Mappings format. AFAIK, there is the latest draft.
It’s not yet clear to me how source maps going to help with mixins and variables.

I dug FireSASS. It won’t help here.
How FireSASS work? Here is an example.
index.sass:
$blue: #3bbfce

body
  background-color: $blue

$ sass --debug-info index.sass:index.css

index.css
@media -sass-debug-info{filename{font-family:file\:\/\/\/private\/tmp\/sass\/index\.sass}line{font-family:\000033}}
body {
  background-color: #3bbfce; }

It just maps line numbers. I need mapping for every rule, property name and value.

I know css-x-fire is doing it somehow..


Add missing registry indices db script to documentation

Purpose
Add script for missing indices in registry db.
fixing : https://github.com/wso2/docs-apim/issues/6315

REG_RESOURCE_TAG_IND_BY_REG_TAG_ID to REG_RESOURCE_TAG
REG_RESOURCE_PROPERTY_IND_BY_REG_PROP_ID to REG_RESOURCE_PROPERTY

Related PRs
https://github.com/wso2/carbon-kernel/pull/3169

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


Delta Lake project page link is wrong

At the bottom of the page their is a link to the Delta Lake project page on the lfprojects.org. The link seems to go to a generic page and I believe that actual project page link should be https://www.linuxfoundation.org/Projects/delta-lake/ - but it's completely empty at the moment.
Maybe worth linking to the project page on GitHub (https://github.com/delta-io/delta) instead as that contains much more information.
Also - their is a link to the .Net for Apache Spark page but I cant seem to find any clear statement that it supports Delta Lake as of today. If so it would be nice to see an example of how to set it up.

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

ID: 65c77585-0136-ba0d-6147-5853ecc07d09
Version Independent ID: d498bab9-b831-c667-2f4f-4a1e7c6cd682
Content: What is Delta Lake - Azure Synapse Analytics
Content Source: articles/synapse-analytics/spark/apache-spark-what-is-delta-lake.md
Service: synapse-analytics
Sub-service: spark
GitHub Login: @euangms
Microsoft Alias: euang

@jonsing - Thanks for the feedback. We have assigned the issue to the content owner to review and update the doc as appropriate.
@euangms  - Can you please have a look at this one ?

Updates made and pushed to the staging branch, will get updated within a week.

#please-close


Unable to dismiss assignee

It seems https://github.com/web-platform-tests/wpt-pr-bot/pull/55 introduced a problem similar to https://github.com/web-platform-tests/wpt-pr-bot/issues/9 (PR https://github.com/web-platform-tests/wpt-pr-bot/pull/31)
See
https://github.com/web-platform-tests/wpt/pull/15649#event-2177970274

annevk unassigned zcorpan 2 hours ago
wpt-pr-bot assigned zcorpan 2 hours ago

cc @lukebjerring

So, while this is quite annoying, and we should change it, it's somewhat working as intended.
The current assignee for a review should not just unassign themselves, and thus ignore the PR - they are responsible for delegating the task. Just unassigning themselves (and having the bot handle that, not reassigning) will result in a PR that has no assignee, and gets neglected.
So, as expected, when you assigned foolip as the review first, then unassigned yourself, it didn't reassign you (because there's an assignee).

@lukebjerring I think that's an good interpretation of the feature and its intended use. If there's a bug here, it's that the script is too eager, and its immediate response forces people to switch assignees in a particular order. I was going to recommend inserting a delay in order to give folks a chance to unassign and then reassign, but we already have a 5-second delay (though it's motivated by another requirement). In light of that, I don't think any change is required. What do you think?

I'm not convinced that any changes should be made - to mitigate the nuisance would require doing something informative (maybe an instructional comment?). Are we able to temper a different delay for each hook behaviour?

A longer delay before reassigning (say 60 seconds) would be good I think. The bot could add a comment, but I think it's not necessary.


Virtualbox: Cannot load kernel modules

Getting this during stage 1:
[...]
[    1.563796] stage-1-init: loading module vboxpci...
[    1.576498] vboxdrv: version magic '4.13.5-hardened SMP mod_unload modversions RANDSTRUCT_PLUGIN_cc0c9ab00428eea6c874f7687a488532a815637be2dc8655e122d1b33405d217' should be '4.13.5-hardened SMP mod_unload modversions RANDSTRUCT_PLUGIN_b9c568d4e1c2302787978e57506e20c1ccc945d7bc10e6ed462bf352adcff778'
[    1.576775] stage-1-init: modprobe: ERROR: could not insert 'vboxpci': Exec format error
[    1.577852] stage-1-init: loading module vboxnetflt...
[    1.590460] vboxdrv: version magic '4.13.5-hardened SMP mod_unload modversions RANDSTRUCT_PLUGIN_cc0c9ab00428eea6c874f7687a488532a815637be2dc8655e122d1b33405d217' should be '4.13.5-hardened SMP mod_unload modversions RANDSTRUCT_PLUGIN_b9c568d4e1c2302787978e57506e20c1ccc945d7bc10e6ed462bf352adcff778'
[    1.590737] stage-1-init: modprobe: ERROR: could not insert 'vboxnetflt': Exec format error
[    1.591792] stage-1-init: loading module vboxnetadp...
[    1.604404] vboxdrv: version magic '4.13.5-hardened SMP mod_unload modversions RANDSTRUCT_PLUGIN_cc0c9ab00428eea6c874f7687a488532a815637be2dc8655e122d1b33405d217' should be '4.13.5-hardened SMP mod_unload modversions RANDSTRUCT_PLUGIN_b9c568d4e1c2302787978e57506e20c1ccc945d7bc10e6ed462bf352adcff778'
[    1.604691] stage-1-init: modprobe: ERROR: could not insert 'vboxnetadp': Exec format error
[    1.605879] stage-1-init: loading module vboxdrv...
[    1.618586] vboxdrv: version magic '4.13.5-hardened SMP mod_unload modversions RANDSTRUCT_PLUGIN_cc0c9ab00428eea6c874f7687a488532a815637be2dc8655e122d1b33405d217' should be '4.13.5-hardened SMP mod_unload modversions RANDSTRUCT_PLUGIN_b9c568d4e1c2302787978e57506e20c1ccc945d7bc10e6ed462bf352adcff778'
[    1.618870] stage-1-init: modprobe: ERROR: could not insert 'vboxdrv': Exec format error
[    1.619081] stage-1-init: running udev...
[...]

The issue is that I also have security.lockKernelModules, so I can never load those modules after the fact.
I am on the latest 17.09 channel release but I doubt this is a new problem (looking at the commits against Virtualbox). I am probably just the only one running lockKernelModules with Virtualbox :)

Even without lockKernelModules, they modules cannot be loaded and report Exec format error

Seems to be an issue with the Copperhead kernel, not getting this with 4.9.54

Also not happening with vanilla 4.13.5... hmmm...

Alright, I think I am closing in on the issue:
https://github.com/copperhead/linux-hardened/blob/4.13/arch/Kconfig#L476

Ah, this seems to make sense now:
We build the kernel, it generates a random seed.
Since we build the VirtualBox modules at a later time using the kernel source, the kernel source invokes the seed generation again and the seeds never line up.
I am going to turn GCC_PLUGIN_RANDSTRUCT off for now.

If you want, please consider changing linux-hardened-config as well. I'm fairly sure randstruct nearly useless for distro kernels. I enabled it "just because" but if it has usability problems there's no reason to keep it in. A potential improvement for the future is to make the kernel package set take a seed value as a parameter ...

@joachifm I am changing the config, I am trying it out right now (kernel build takes a moment) and will send a PR when I have confirmed it to be working properly.

I like the idea of a seed value into the kernel package.
We'd need to keep the seed around somewhere and grab it when building kernel modules...

hmm, apparently the VirtualBox build segfaults when you try to build it while on the Copperhead kernel... Booting into a vanilla 4.13 and trying again :)

I was thinking of a variant of linuxPackagesFor that also takes a seed parameter which it then uses to instantiate the package set. In that scenario you don't need to keep the seed around, as it were, though I suppose there's really no harm in putting the seed in the Nix store (packages using the seed will be in there anyway, leaking those would be equivalent to leaking the seed, as far as I can tell, though I've not really thought this through ...).
For now I think disabling randstruct is the way to go, I also don't think you need to do a ton of testing for this, checking that configfile still builds & looks okay should suffice.

Agreed, I do want to see that VirtualBox works :)

Aha, I see :)

5dda1324be421c1a2afd5a559a87f97691287003 and f33fb785af4d2d3dc309ed8c298f684fcedd1545

Thank you

Hi, I'm interested in getting this working on nixos 18.09 but hit some roadblocks, any pointers would be much appreciated.
Installing the version directly from a volth/anbox checkout succeeds, but anbox cannot run because the ashmem and binder modules are not loaded (it seems they are not installed for the correct kernel version by the nix expression?).
I tried rebasing the anbox branch onto 18.09 (https://github.com/jazmit/nixpkgs/tree/anbox) to see if that would pick up the correct kernel version, but now compilation fails as follows:
> nix-env -f default.nix -i anbox
installing 'anbox-0.1.0-76be0e2'
these derivations will be built:
  /nix/store/n03kl0jb9m3qyn9zrhdf5l003j6inqk4-properties-cpp-0.0.1+14.10.20140730-0ubuntu1.drv
  /nix/store/11w2qfia3pn0fadymlcd5g4v829li33c-process-cpp-2.0.0+14.10.20140718-0ubuntu1.drv
  /nix/store/8nlh4sngwxznabi5gc7d6gygnhk9jzgy-dbus-cpp-5.0.0+16.10.20160809-0ubuntu1.drv
  /nix/store/pyz9520igf1m1mj73wg6mahnvlq3ywsr-anbox-0.1.0-76be0e2.drv
building '/nix/store/n03kl0jb9m3qyn9zrhdf5l003j6inqk4-properties-cpp-0.0.1+14.10.20140730-0ubuntu1.drv'...
unpacking sources
unpacking source archive /nix/store/55v7qbqi3kxsacvcijxd0cxxqfmsgv1d-bzr-export
source root is bzr-export
patching sources
configuring
fixing cmake files...
cmake flags: -DCMAKE_BUILD_TYPE=Release -DCMAKE_SKIP_BUILD_RPATH=ON -DCMAKE_INSTALL_INCLUDEDIR=/nix/store/iywy64jv82fazsmy4k4a08948mv1c0zc-properties-cpp-0.0.1+14.10.20140730-0ubuntu1/include -DCMAKE_INSTALL_LIBDIR=/nix/store/iywy64jv82fazsmy4k4a08948mv1c0zc-properties-cpp-0.0.1+14.10.20140730-0ubuntu1/lib -DCMAKE_INSTALL_NAME_DIR=/nix/store/iywy64jv82fazsmy4k4a08948mv1c0zc-properties-cpp-0.0.1+14.10.20140730-0ubuntu1/lib -DCMAKE_POLICY_DEFAULT_CMP0025=NEW -DCMAKE_OSX_DEPLOYMENT_TARGET= -DCMAKE_OSX_SYSROOT= -DCMAKE_FIND_FRAMEWORK=last -DCMAKE_STRIP=/nix/store/h0lbngpv6ln56hjj59i6l77vxq25flbz-binutils-2.30/bin/strip -DCMAKE_RANLIB=/nix/store/h0lbngpv6ln56hjj59i6l77vxq25flbz-binutils-2.30/bin/ranlib -DCMAKE_AR=/nix/store/h0lbngpv6ln56hjj59i6l77vxq25flbz-binutils-2.30/bin/ar -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_INSTALL_PREFIX=/nix/store/iywy64jv82fazsmy4k4a08948mv1c0zc-properties-cpp-0.0.1+14.10.20140730-0ubuntu1 -DGMOCK_INSTALL_DIR=../gmocksrc
-- The C compiler identification is GNU 7.3.0
-- The CXX compiler identification is GNU 7.3.0
-- Check for working C compiler: /nix/store/iw94llkj05wgaz268mlzvgx8jkbi1ss0-gcc-wrapper-7.3.0/bin/gcc
-- Check for working C compiler: /nix/store/iw94llkj05wgaz268mlzvgx8jkbi1ss0-gcc-wrapper-7.3.0/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /nix/store/iw94llkj05wgaz268mlzvgx8jkbi1ss0-gcc-wrapper-7.3.0/bin/g++
-- Check for working CXX compiler: /nix/store/iw94llkj05wgaz268mlzvgx8jkbi1ss0-gcc-wrapper-7.3.0/bin/g++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found Lcov: /nix/store/sp77lj21zk7ys4jl2y09vaj59kc8s9m7-lcov-1.13/bin/lcov
-- Found gcovr: /nix/store/cib313fdxmfgwlc3b6aqdapnrpnyk766-python2.7-gcovr-2.4/bin/gcovr
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
-- Found GTest: /nix/store/rx1bs9ab1v6d68p425hlz4g0yv0nbdqq-gtest-1.8.0/include
-- Configuring done
-- Generating done
-- Build files have been written to: /build/bzr-export/build
cmake: enabled parallel building
building
build flags: -j1 -l1 SHELL=/nix/store/czx8vkrb9jdgjyz8qfksh10vrnqa723l-bash-4.4-p23/bin/bash
Scanning dependencies of target properties_test
[  8%] Building CXX object tests/CMakeFiles/properties_test.dir/properties_test.cpp.o
make[2]: *** No rule to make target 'gmock/libs/gtest/libgtest.a', needed by 'tests/properties_test'.  Stop.
make[1]: *** [CMakeFiles/Makefile2:1040: tests/CMakeFiles/properties_test.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
builder for '/nix/store/n03kl0jb9m3qyn9zrhdf5l003j6inqk4-properties-cpp-0.0.1+14.10.20140730-0ubuntu1.drv' failed with exit code 2
cannot build derivation '/nix/store/11w2qfia3pn0fadymlcd5g4v829li33c-process-cpp-2.0.0+14.10.20140718-0ubuntu1.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/8nlh4sngwxznabi5gc7d6gygnhk9jzgy-dbus-cpp-5.0.0+16.10.20160809-0ubuntu1.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/pyz9520igf1m1mj73wg6mahnvlq3ywsr-anbox-0.1.0-76be0e2.drv': 1 dependencies couldn't be built
error: build of '/nix/store/pyz9520igf1m1mj73wg6mahnvlq3ywsr-anbox-0.1.0-76be0e2.drv' failed


critical rounding bug

there is a huge round issue with the new paypal version 3.13.1 which create an invalid amount to pay
file express_checkout/process.php line 124
there is a typo :
Configuration::get('PS_PRICE_DISPLAY_PRECISION')
should be :
PS_PRICE_DISPLAY_PRECISION

Hello,
Thank you for your message.
The constant 'PS_PRICE_DISPLAY_PRECISION' is actually "Configuration::get('PS_PRICE_DISPLAY_PRECISION')" : Here is the link to the PrestaShop project : https://github.com/PrestaShop/PrestaShop/blob/<IP_ADDRESS>/config/config.inc.php#L131
If you have an issue with rounding may be you have some override  in your environement?
Thank you!
Regards,

I have this issue with a prestashop 1.5 where "PS_PRICE_DISPLAY_PRECISION" is the only way
Also PS_PRICE_DISPLAY_PRECISION is still used in the paypal module in a few others pages like paypal.php line 2042
And this syntax works in 1.6 and 1.7 too

Hello,
We can see the issue now. The current code works well for PS1.6 but not for PS1.5. Actually we do not keep the compatility with PS1.5 anymore but it is a small fix to add. So we will add it to the next version.
Have a good day !
Best regards,

Hello,
The v3.16.2 with the fix has been published last week.
Have a nice day !


Rename "PROGMEMAssert"

Resolves https://github.com/arduino/library-registry/issues/1848

Done:
2022/09/16 12:36:28 Loaded 5160 libraries from DB
Removing PROGMEM Assert
Success!


UI: sidebar takes up full window

Describe the bug
When browser window is not full screen, the open sidebar takes up the full screen and the chat dialogue is not visible.
To Reproduce
Reduce your browser window size, go to evo.ninja, open sidebar
Expected behavior
I would expect the same behavior as in full screen, where you can still see the chat dialogue when the side bar is open
Desktop (please complete the following information):

MacOS
Browser: Brave

This is also happening on mobile


[5.1 06/12][Diagnostics] Make sure that fixes associated with function builders …

…are found and diagnosed

Explanation:  Current logic in applySolutionFixes didn't actually look inside
of single-expression closures (because of brace statement) or
closures which are transformed by function builders.

Issue: rdar://problem/51167632

Scope: Diagnostics, new function builder functionality hasn't been properly integrated into new diagnostic framework.

Risk: Low.

Testing: Added compiler regression tests and adjusted existing ones.

Reviewed by: @DougGregor

Resolves: rdar://problem/51167632
(cherry picked from commit d8debe7a5717742ccce9a770c9aef78fc97e1c63)

@swift-ci please test


The Timeless Charm of Ceramic Coffee Mugs: Why They’re a Must-Have for Every Coffee Lover

When you think of the perfect morning, it’s likely to include a cozy chair, a peaceful moment, and a steaming cup of coffee. And for many coffee lovers, the ceramic coffee mug is a key part of that experience. Ceramic mugs have been a staple in homes for centuries, and for good reason. From their aesthetic appeal to their practical benefits, ceramic mugs offer much more than just a vessel for your favorite brew. Let’s explore why these timeless cups remain a must-have in every kitchen.

The Aesthetic Appeal
Ceramic coffee mugs come in a wide range of designs, colors, and shapes, making them incredibly versatile. Whether you prefer sleek modern designs or rustic, handmade finishes, there’s a ceramic mug to match your style. Many mugs are even works of art, with hand-painted patterns, intricate detailing, and unique glazing techniques that make each one truly special.

Adding ceramic mugs to your kitchen collection can also enhance the look of your home. They can complement your kitchen decor, add a splash of color to your morning routine, or even be a reflection of your personality.

Durability and Longevity
Ceramic coffee mugs are known for their durability. Unlike glass or delicate china, ceramic mugs can withstand regular use without chipping or breaking easily. With proper care, a quality ceramic mug can last for years, making it a worthwhile investment for coffee enthusiasts. Whether you use your mug at home or take it to the office, its sturdy construction ensures it will hold up to everyday wear and tear.

Heat Retention
One of the biggest advantages of ceramic coffee mugs is their excellent heat retention. Ceramic is a poor conductor of heat, meaning it doesn’t transfer heat quickly to your hands or the surrounding air. This helps keep your coffee hotter for longer, allowing you to savor each sip without rushing. Whether you prefer your coffee piping hot or a slow sip throughout the morning, ceramic mugs help maintain the perfect temperature.

Eco-Friendly and Sustainable
With the increasing awareness of environmental sustainability, many people are looking for eco-friendly alternatives to disposable cups. Ceramic mugs are an excellent choice for reducing waste. Unlike plastic or paper cups, they are reusable and often made from natural materials. Investing in a ceramic mug means you can reduce your environmental footprint while enjoying your favorite beverage.

Additionally, many ceramic mugs are handmade by local artisans, adding an extra layer of sustainability. By supporting small businesses and buying handcrafted mugs, you’re not only getting a unique product but also contributing to a more eco-conscious lifestyle.

Versatile and Easy to Clean
Ceramic coffee mugs are incredibly versatile. They are microwave-safe, making it easy to reheat your drink, and most are dishwasher-safe for easy cleaning. Whether you’re sipping coffee, tea, or even hot chocolate, ceramic mugs can handle it all without absorbing flavors or odors over time. Their non-porous surface ensures that your drink always tastes fresh, and the smooth texture makes them easy to wash, keeping your mug looking as good as new.

Personalized Touch
In a world of mass-produced products, ceramic coffee mugs offer a unique chance for personalization. Many artisans and manufacturers offer custom designs, allowing you to create a mug that’s tailored to your taste. Whether it’s your favorite quote, a meaningful symbol, or even your name, a personalized ceramic mug can make your morning coffee ritual even more special. These also make fantastic gifts for friends, family, or coworkers, giving them a personal touch that’s sure to be appreciated.

Conclusion: More Than Just a Mug
Ceramic coffee mugs aren’t just a functional item—they’re a part of the coffee experience. From their beautiful designs to their practical benefits, ceramic mugs offer a blend of tradition, sustainability, and personal expression. Whether you’re starting your day with a strong espresso or winding down with a herbal tea, the right ceramic mug can elevate your drinking experience.
So the next time you’re enjoying your favorite brew, take a moment to appreciate the ceramic mug in your hand. It’s more than just a cup it’s a companion on your coffee journey.

/spam - reported


Dynamic Cluster Client

We currently only have the following method in the rpc package:
func NewAuthenticatedClient(remote string, cert tls.Certificate, ca *x509.Certificate, opts ...grpc.DialOption) (*grpc.ClientConn, error) {

Which needs a concrete Curator/node address, and will not load-balance or fail over between Curators.
We need such a client both internally (to load-balance and fail over to the right curator) and externally (to connect to a cluster given just a ClusterDirectory or even the address of a single 'bootstrap' node).

First implementation: https://review.monogon.dev/c/monogon/+/637

Landed as part of CL 637


F5 .. ctrl-F5  any keybindings from InsertDate stopped working under KDE in Sublime either 4121 or 4126

Dear,
there seems to be a difficulty running InsertDate in Sublime recently - no key binding works either on KDE graphic environment in Ubuntu 22.04
Tested on two machines, having KDE as their GUI, two sublime builds, same problem:
F5 brings zero response from InsertDate. also other default keybinds for InsertDate.
Aside from that problem, the "usual" shortcuts in sublime  e.g. ctrl-F for search - function normally.
Anyone having the same experiences and what is the way to inspect it further?
Thanks
System versions etc:
Machine1:
Ubuntu Studio 22.04
KDE Plasma 5.24.x
KDE framework: 5.94.x
QT: 5.15.x
Machine 2:
22.04
5.24.x
5.92.x
5.15.x
obviously subversions does not matter
both on X11

InsertDate didn't change anything (it wasn't updated in 6 years), so it's highly unlikely to be the cause here. However, we can still try to troubleshoot the situation.
First, when you insert sublime.log_input(); sublime.log_commands() in the console (View → Show Console), do you receive any output after pressing f5 and the other bindings? If no, something external (e.g. KDE itself or some of its services) is grabbing your keys and ST isn't even receiving them. If yes but there is no mention of "insert_date", you likely installed a different package that also uses these bindings but takes priority.


Persistent environment variables

As it stands, deploying blows away any existing environment variables and replaces them with whatever's in the configuration.
However, there are some cases for which it would be nice to have persistent environment variables in EB - I'm thinking of things like Rails' SECRET_KEY_BASE which should not be stored in the repo, nor does it really make sense to have them in the local environment (since they are environment-specific).
Is there any way currently to have persistent environment variables in EB, or have others run into this issue?

I'm not using EB anymore, but this is right from the readme example Any environment variables - will be available in ENV:
options:

  # Any environment variables - will be available in ENV
  aws:elasticbeanstalk:application:environment:
    FOO: 'bar'
    RAILS_SKIP_ASSET_COMPILATION: true # Use if doing asset compilation before packaging (recommended)

Is this what you are using?

Yes, but the issue here is for environment variables that should not be stored in the repo for security reasons, nor do they make sense to have in the local environment.

Ah, my recollection is that you have to configure these in the AWS console or via command line to the running ENV.
It may best check the https://github.com/ThoughtWorksStudios/eb_deployer documentation, as this is just a helpful config/rake wrapper over it.

Yeah, the issue is that it seems eb_deployer and by extension elastic-beanstalk clear out any existing EB ENV vars and replace them with only what's in the file.
Anyways, thanks, I'll dig into workarounds!


Enforce standard roles

Might be worth changing the pre-commit to have ["--fix"] so the bot can auto-fix files?


KMeans clustering algorithm

Implement Kmeans clustering algorithm for vectors.
Knn algorithms that further reduce memory usage of vectors (such as
Product Quantization, RaBitQ etc) require clustering of vectors.
This implements KMeans clustering algorithm.

I did benchmarking  on MNIST dataset and compared the accuracy with KMeans algorithm  from sklearn.cluster.
| Clusters | Python accuracy| Java accuracy|
| ---: | --- :| --- :|
| 10  |     0.5712|   0.5855  |
| 16  |     0.6867|    0.6703 |
| 64  |    0.8356 |    0.8194 |
| 256 |    0.9123 |    0.9043 |

Whoa, cool!  What is (roughly) the run-time of KMeans as a function of number of vectors?  Do you tell it how many clusters to create, or, do you ask it to keep splitting into more clusters until it reaches a target accuracy?

@mikemccand
The runtime depends on configured number of iterations, restarts, sample size, and cluster count. But, it can be very fast. I will leave mMayya to talk about some specific numbers.

Do you tell it how many clusters to create, or, do you ask it to keep splitting into more clusters until it reaches a target accuracy?

You tell it how many clusters you want.
I could see us eventually doing a "KMeans-tree" type thing where we can split and combine clusters more efficiently, but having KMeans would be step one.

@mikemccand Here are some numbers on my mac M3:
Doing 34 clusters with defaults (5 restarts, 10 inters each) on vectors of 1024 dims:

N docs
Performance in seconds

131K
146

1M
347

9M
5119

@tveasey Thank you for your detailed feedback, it was addressed in the last commit.


Accept shebangs in code blocks

A code block that starts with a shebang should be interpretted as an executable file. This enables mask to support any interpreter.
Ref: https://github.com/casey/just#writing-recipes-in-other-languages

I thought about this before, but it would incur a change in behavior and tiny performance penalty.
Right now, mask just passes source strings to runtimes via arguments (most commonly -c). This means that mask doesn't have to write to a temp file and execute it at all, which is a bit more work.
AFAIK shebangs are only effective when executing a file. Since mask doesn't write temp files to execute, this isn't possible yet.
Mask already supports the most common runtimes and it's easy to add more if needed. I'm unsure how important adding shebang support really is at this point.

It would only be a tiny performance penalty on the first run.
For example, the Deno runtime compiles and type-checks code before executing. If it is passed a file, it can cache compilation for that file path, significantly speeding up subsequent runs. Unfortunately booting up the typescript compiler for deno is measurably slow for the first file. So for Deno TypeScript to work with a good user experience, writing to files would be required. At that point, general shebang support makes sense to me.

Adding hashbang and pound-bang keywords to make issue more searchable.

Just an FYI that shebangs are currently supported in my fork: https://github.com/brandonkal/inkjet

No PR? This is my top request too! Potentially related to #45.

Yeah, I do think adding support for shebangs will be useful.
My concern above regarding the tiny perf hit to write to a temp file can be avoided by checking if the code block starts with a shebang and only write+execute a temp file in that case.

After I commented I realized 1 of your biggest DX improvements over Maid is injecting arguments by name. Shebang might be nice for corner cases like awk or transpiled JS but it'd be sad to forgo that feature in .NET or Deno. I wonder if there's a way to query GitHub for any popular ones not mentioned here 🤔

Since argument injection is just setting environment variables, I would assume that executing a temp file which contains a shebang would still be able to use those set env vars. Though, I could be wrong... haven't tried this before 😅

Ah I see that in add_utility_variables now. I imagined it was something trickier. Now I understand about the temp file too. It looks like there are minor bugs with the current command config though:

PowerShell is cross-platform but it's configured for Windows.
Your fallback assumes the target shell is the same as the calling shell. That's likely not the case.

I think a more general and flexible solution could be a cascading lookup for commands:

Some TOML/JSON/whatever config file. You could have 1 for each platform and read any user config from $XDG_CONFIG_HOME (or the Windows equivalent).
Either (the next option might be better) override with shebang (if included) using a tempfile ...
Or override with a custom command (if included) following the lang (inspired by ReadMe-Flavored Markdown).

Default config
[deno]
# WARNING: eval implies --allow-all
command.mac = '''deno eval'''
langs = ["ts", "typescript"]

$XDG_CONFIG_HOME/mask/config.toml
[deno]
command = '''deno eval $SCRIPT --print'''

maskfile.md
Default:
```ts
"this is denoooo"
```

Shebang from temp file:
```ts
#!/usr/bin/env deno run --allow-read --allow-write
console.log("this is denoooo with permissions")
```

Inline command:
```ts ts-node -p
// $SCRIPT is implied
"this is ts-noooo(de)"
```

PowerShell is cross-platform but it's configured for Windows.

Yeah, Windows and PowerShell support were added together early last year. If someone opens an issue for PowerShell support on linux/macOS, it should be a quick change.

Your fallback assumes the target shell is the same as the calling shell.

Hmmm, I'm not quite sure I follow. Are you talking about this fallback block below? I think this actually relies on the code block lang code to determine the executor... so if someone uses "fish" as the lang code, that will be the shell that is invoked.
https://github.com/jakedeichert/mask/blob/ab46b568a21731a58507367ccd6b869579e8a308/mask/src/executor.rs#L63-L68

I think a more general and flexible solution could be a cascading lookup for commands

Yeah, I'll need to think about this a bit more. I feel like adding shebang support is enough to cover 95% of use cases without having to resort to introducing a config file. FWIW I've tried to keep mask super minimal and only require a single maskfile.md to operate. Supporting a user-specific config file for mask would result in maskfiles being less portable and more dependent on the individual users sharing the exact same config setup.

I think this actually relies on the code block lang code to determine the executor

My bad I misread it.

If someone opens an issue

Seems silly okay ...

Supporting a user-specific config file

My main point is you save yourself work making it a config file:

It could at least be a config file in this project since it isn't doing anything dynamic in code.
You wouldn't have to maintain corner cases (examples above) if that config file could be overriden.
If the config file is in the same project it wouldn't be machine-specific. That issue seems inescapable though. You can make reasonable assumptions like a POSIX-compatible shell (using WSL on Windows or Yarn's shell emulator) or maybe even some version of Node, but zsh, new ESM Node, and Deno are all examples that would have to be enforced by a Docker file or something anyway. It occurred to me for Node projects we're particularly beholden to Node alternatives like Maid because they're installable as dependencies.
Yes shebang covers the same ground but more verbosely (example above) and more convoluted because it's expecting a file instead of string or stdin.

Neat project I'll circle back when I have a concrete use case ✌🏼


Convert the CircleCI workflow to a GitHub Actions workflow

Summary
This pull request converts the CircleCI workflows to GitHub actions workflows. Github Actions Importer was used to convert the workflows initially, then I edited them manually to correct errors in translation.
Issues

facebook/react-native-website/tests -> lint

error Command "ci:lint" not found.

facebook/react-native-website/tests -> build

error Command "build" not found.

How did you test this change?
I tested these changes in a forked repo.
https://fburl.com/workplace/f6mz6tmw

Closing as this was fixed in https://github.com/facebook/react-native-website/pull/4143


tor module: add support for transparent proxy and dns

This pull request adds support for tor transparent proxy

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

[x] NixOS
[ ] macOS
[ ] Linux

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

A quote from SLNOS discussion:

AutomapHostsSuffixes must either be made configurable or be
removed. The patch fixes the value to the default value. Makes no
sense.

I also don't want to have .exit in there for security reasons.

Same for ClientRejectInternalAddresses and
ClientDNSRejectInternalAddresses.

ClientRejectInternalAddresses if made configurable should be moved
under optionalString cfg.client.transparentProxy.enable block. It
configures the proxy not the DNS.

So i removed ClientRejectInternalAddresses and ClientDNSRejectInternalAddresses as these are set by default and i added option for AutomapHostsSuffixes.

So i removed ClientRejectInternalAddresses and ClientDNSRejectInternalAddresses as these are set by default and i added option for AutomapHostsSuffixes.

Please set all new enable to false by default.
Also set automapHostsSuffixes to [".onion" ".exit"] by default (it's
tor's default).

Some more personal nitpicks:

My personal OCD requires all options of newly added mkOptions to be
consistently ordered (e.g. type, followed default, example,
description, any consistent order is fine).

If I were you I would also generalize other places that use isolation
(both SOCKSPorts) with your new isolationOptions (just make it
into a function that takes its default as an argument). It can be
done later, though.

Ok, fixed, is this ok now?

LGTM. I haven't tested this, though.


fix forward and backward button

issue #148

Hey @Neel-07 create the PR with UI-Improvement branch


Can't initialize cloud TPU on GKE TPU Nodes

Description
We are trying to run JAX on GKE Nodes.
https://cloud.google.com/tpu/docs/system-architecture-tpu-vm#tpu_nodes_4
The docker image works fine on the TPU VM instances but the same one never works when we try to run it on the Google Kubernetes Engine TPU Nodes.
Following is a part of the error log from GKE.
_

Traceback (most recent call last):\n  File "/usr/local/lib/python3.9/dist-packages/jax/_src/lib/xla_bridge.py", line 335, in backends\n    backend = _init_backend(platform)\n  File "/usr/local/lib/python3.9/dist-packages/jax/_src/lib/xla_bridge.py", line 387, in _init_backend\n    backend = factory()\n  File "/usr/local/lib/python3.9/dist-packages/jax/_src/lib/xla_bridge.py", line 191, in tpu_client_timer_callback\n    client = xla_client.make_tpu_client()\n  File "/usr/local/lib/python3.9/dist-packages/jaxlib/xla_client.py", line 126, in make_tpu_client\n    return _xla.get_tpu_client(\njaxlib.xla_extension.XlaRuntimeError: NOT_FOUND: No ba16c7433 device found."

_
As we were able to run the TensorFlow base image and that was able to find the cloud TPU devices following this link
https://cloud.google.com/tpu/docs/kubernetes-engine-setup#job-spec

So the issue is that JAX is not able to find the cloud TPU devices properly for some reason.
What jax/jaxlib version are you using?
0.2.16
Which accelerator(s) are you using?
TPU Node supported by GKE
Additional system info
Python 3.7
NVIDIA GPU info
No response

https://github.com/google/jax/issues/12917

GKE is still on the legacy TPU Node architecture, which are different from TPU VMs (see this blog post for a short summary of the difference).  I think you're getting that particular error because you're trying to use a TPU VM setup on a TPU Node. The jax[tpu] install doesn't work on TPU Nodes, only TPU VMs. I think a regular pip install jax jaxlib would get around that error.
However, as discussed in https://github.com/google/jax/issues/12917, JAX doesn't work very well on TPU Nodes, and at this point has only best-effort support. (Thanks @OrenLeung for digging that thread up!) See that thread for options on how to proceed. Feel free to ask about any of them here.


Crash on Game Load

Issue Description:
Delete this line after reading it: If this bug occurs in a modpack, please report this to the modpack author first. If you are using an unreleased version of Ender IO (a.k.a development/nightly version), please don't open an issue for features that have not been announced as "finished" or "working". Expect to be ignored if you ignore this template.
What happens:
Crash on client launch, untested serverside
What you expected to happen:
Client to load
Steps to reproduce:

Install enderio and endercore, nothing in crashlogs suggests to me that the other mods are involved at all

...

Affected Versions (Do not use "latest"):

EnderIO:5.1.55
EnderCore:0.5.73
Minecraft:1.12.2
Forge: <IP_ADDRESS>47
SpongeForge? no
Optifine? yes
Single Player (So far)

Your most recent log file where the issue was present:
https://gist.github.com/Jacob345k/39411a4cba5c129540a0603d8514f03e

Close this i figured it out bb


Running objectdetection android app error

I have successfully build and sync the application but while i run the application from the android studio i get this error
I'm using ubuntu 20.04
Android-sdk version 28
Android-ndk-bundle r18b
Waiting for target device...
Invoking mobile-install...
Command: /usr/bin/bazel mobile-install --tool_tag=ijwb:AndroidStudio --device GBT4C19117003514:tcp:5037 "--adb_arg=-s " --adb_arg=GBT4C19117003514 --adb /home/abd-elhamid/Android/Sdk/platform-tools/adb --curses=no --color=yes --progress_in_terminal_title=no -c opt --config=android_arm64 --build_event_binary_file=/tmp/intellij-bep-d0a77d7c-c1bb-40f1-b515-75588c1c7607 --nobuild_event_binary_file_path_conversion -- //mediapipe/examples/android/src/java/com/google/mediapipe/apps/objecttrackinggpu:objecttrackinggpu -c opt --config=android_arm64 --nolaunch_app
Loading:
Loading: 0 packages loaded
ERROR: Skipping 'opt': no such target '//:opt': target 'opt' not declared in package '' defined by /home/abd-elhamid/mediapipe/BUILD.bazel
ERROR: no such target '//:opt': target 'opt' not declared in package '' defined by /home/abd-elhamid/mediapipe/BUILD.bazel
INFO: Elapsed time: 0.221s
INFO: 0 processes.
FAILED: Build did NOT complete successfully (1 packages loaded)
INFO: Build Event Protocol files produced successfully.
FAILED: Build did NOT complete successfully (1 packages loaded)
FAILED: Build did NOT complete successfully (1 packages loaded)

Hi @AbdElhamidNabeel, Could you please test the above installation with the latest release and let us know if you still face the same error. Thanks!


hard-coded partitions found in the external-secrets operator

[x] ✋ I have searched the open/closed issues and my issue is not listed.
[x] removed/re-initialized the build

Description
Please fix the hard-coded AWS partitions in the external-secrets operator installed via blueprints:
Error: creating IAM Policy (external-secrets-20240213164502332000000001): MalformedPolicyDocument: Partition "aws" is not valid for resource "arn:aws:ssm:*:*:parameter/*".
	status code: 400, request id: 457651b7-b54b-45ba-b0e9-80cedb64665f

These resources failed on the first attempt; on subsequent plans these are the ones that need attention:
Terraform will perform the following actions:

  # module.eks_blueprints_addons.module.external_secrets.aws_iam_policy.this[0] will be created
  + resource "aws_iam_policy" "this" {
      + arn         = (known after apply)
      + description = "IAM Policy for external-secrets operator"
      + id          = (known after apply)
      + name        = (known after apply)
      + name_prefix = "external-secrets-"
      + path        = "/"
      + policy      = jsonencode(
            {
              + Statement = [
                  + {
                      + Action   = "ssm:DescribeParameters"
                      + Effect   = "Allow"
                      + Resource = "*"
                    },
                  + {
                      + Action   = [
                          + "ssm:GetParameters",
                          + "ssm:GetParameter",
                        ]
                      + Effect   = "Allow"
                      + Resource = "arn:aws:ssm:*:*:parameter/*"  <-- here
                    },
                  + {
                      + Action   = "secretsmanager:ListSecrets"
                      + Effect   = "Allow"
                      + Resource = "*"
                    },
                  + {
                      + Action   = [
                          + "secretsmanager:ListSecretVersionIds",
                          + "secretsmanager:GetSecretValue",
                          + "secretsmanager:GetResourcePolicy",
                          + "secretsmanager:DescribeSecret",
                        ]
                      + Effect   = "Allow"
                      + Resource = "arn:aws:secretsmanager:*:*:secret:*"  <-- here
                    },
                  + {
                      + Action   = "kms:Decrypt"
                      + Effect   = "Allow"
                      + Resource = "arn:aws:kms:*:*:key/*" <-- here
                    },
                ]
              + Version   = "2012-10-17"
            }
        )
      + policy_id   = (known after apply)
      + tags_all    = (known after apply)
    }

  # module.eks_blueprints_addons.module.external_secrets.aws_iam_role_policy_attachment.this[0] will be created
  + resource "aws_iam_role_policy_attachment" "this" {
      + id         = (known after apply)
      + policy_arn = (known after apply)
      + role       = "external-secrets-20240213164502603300000002"
    }

Plan: 2 to add, 1 to change, 0 to destroy.

This occurs when switching enable_external_secrets = false -> true:
module "eks_blueprints_addons" {
  source  = "aws-ia/eks-blueprints-addons/aws"
  version = "~> 1.15.1" # ensure to update this to the latest/desired version
...
  enable_secrets_store_csi_driver              = true
  enable_secrets_store_csi_driver_provider_aws = true # see docs/storage for more configuration support
  enable_external_secrets                      = true <- here
}

Versions

Module version [Required]:

"aws-ia/eks-blueprints-addons/aws" => version = "~> 1.15.1"

Terraform version:

 % tf version
Terraform v1.6.6
on darwin_arm64
+ provider registry.terraform.io/hashicorp/aws v5.36.0
+ provider registry.terraform.io/hashicorp/cloudinit v2.3.3
+ provider registry.terraform.io/hashicorp/helm v2.12.1
+ provider registry.terraform.io/hashicorp/kubernetes v2.25.2
+ provider registry.terraform.io/hashicorp/time v0.10.0
+ provider registry.terraform.io/hashicorp/tls v4.0.5

Expected behavior
All partitions are vaiablized.

Any helm chart being installed via blueprints must:

Discover the partition and save to a variable like local.part for example. These seem to be routinely useful:

data "aws_caller_identity" "current" {}
data "aws_partition" "current" {}
data "aws_availability_zones" "available" {}

locals {
  builder    = regex("arn:${local.part}:iam::\\d+:user/(.*)", data.aws_caller_identity.current.arn)[0]
  user_arn   = split("/", data.aws_caller_identity.current.arn)[0]
  acct_no    = data.aws_caller_identity.current.account_id
  part       = data.aws_partition.current.partition
  dns_suffix = data.aws_partition.current.dns_suffix
}

reconstruct resources using ${local.part} variable

Resource = "arn:${local.part}:secretsmanager:*:*:secret:*"

Pass new, reconstituted values from Terraform to Helm for deployment.

@vstthomas I just looked at this and I do not see us hard-coding the partition for the resource arns. They are provided as inputs to the module via the var.external_secrets_ssm_parameter_arns variable.
https://github.com/aws-ia/terraform-aws-eks-blueprints-addons/blob/077b8bc5663a66ada7f671a18c023c2dd017c7ed/main.tf#L2346-L2356


Fix permission_classes typo in the CHANGELOG

I wanted to use the field_permissions so I was looking at the release notes as it's sort-of the only of documentation we have for now and found a typo.
I already fixed the typo in the releases of github

Hi, thanks for contributing to Strawberry 🍓!
We noticed that this PR is missing a RELEASE.md file. We use that to automatically do releases here on GitHub and, most importantly, to PyPI!
So as soon as this PR is merged, a release will be made 🚀.
Here's an example of RELEASE.md:
Release type: patch

Description of the changes, ideally with some examples, if adding a new feature.

Release type can be one of patch, minor or major. We use semver,so make sure to pick the appropriate type. If in doubt feel free to ask :)


Added L0 tests

@sundargs2000 What are the new commits for?

@sundargs2000 What are the new commits for?

Hey. There some changes in node_modules so Ajinkya suggested to remove them.


In Desktop Chrome browser while dragging, the popup closed if i dragstop outside the popup.

Just open any sample in the Google Chrome browser, and open the color picker popup. Now drag the handle by pressing the mouse and move. The color values are changed continuously that is no problem. If i mouseup the handle from outside the popup then the popup closed immediately.
But it works fine in firefox browser.

Thanks for reporting - we've noticed this in Issue #249.  I'm sure this used to work, but I went back and checked some older versions of the plugin against chrome and they all seem to have the same problem so I wonder if something changed with Chrome.  I've been experimenting with some changes over in that issue, so I'm going to close this as a duplicate


Add the first design doc.

Content
The first design document for our implementation.
Comments
@curiecrypt after this PR is merged, it would be great if you could add a section about the documentation you are creating.

Nice first draft!
I agree with you that we should keep the API simple and try to separate the "input parameters" (np, nf, lamba) from the internal ones (u, d, q, r...).
I would however go further in keeping things simple, and against your second proposal, and suggest to only accept Bytes as set elements: everything can be encoded as bytes and we leave the R verification outside of the Alba repository.
Which schemes to choose: I agree with you the first scheme is unpractical, the second only works with large np and so we should focus on the third. I think it might be good however to keep an "unbounded" option, perhaps just a flag. The simple lottery is -simple-, we can keep it as is sure . I do believe there is merit in keeping the weighted case, but I would be more encline to do the the lottery-weight on the Peras side (for protocol as well as design reasons). As such, we should not need a weighted cased in Alba's first version.
Which hash to choose: Let's use trait, yes! I recommend using standard hash functions SHA2/3 and Blake2 and suggest one as default (I have a preference for Blake2 as it is cheaper). Domain separation wise, I'd suggest, if possible, to use a combination of "2 seeds": a public one (with default) and a private one (to separate h0, h1...). The seeds need not to actually be separated when hashing but could be concatenated depending on the underlying hash function used, security and efficiency (Blake2 has 4 to 12 bytes for salt and personalisation tag).

Group discussion: we should use rust generics for the alba element data type. E.g. a type with a property that it is convertible to a byte string.

You should write a plan of what you want to write here with detailed points for each section as you often disgress and it is unclear what your points are. You need to write the scope of this document first, an overview of your document, then clear paragraph with the main points highlighted and finally their explanations.
This document should at the very least:
* explain very succinctly what alba is

* mention which algorithms we are implementing and why

* design choices made (generics, prehashed)

* potential evolutions and contributions

Please be concise, many times you can reduce a paragraph to a single sentence, and use formal, impersonal language.

@rrtoledo are you suggesting a different structure for the document? This design doc is mostly intended for the four of us, so I don't think we need to be very formal about it, as long as we agree on the main points there. For the same reason, the document doesn't need to explain what alba is, references is enough. I'm not sure about the other three bulletpoint as I do talk about those. What is wrong about informal language? What do you mean about impersonal language?
Also one small request. When you want to leave two comments on the same line or there is already a comment, press the plus button to create a new thread. This will make it easier to separate the conversations, and I can resolve one without resolving the other.

@rrtoledo are you suggesting a different structure for the document? This design doc is mostly intended for the four of us, so I don't think we need to be very formal about it, as long as we agree on the main points there. For the same reason, the document doesn't need to explain what alba is, references is enough. I'm not sure about the other three bulletpoint as I do talk about those. What is wrong about informal language? What do you mean about impersonal language?
Also one small request. When you want to leave two comments on the same line or there is already a comment, press the plus button to create a new thread. This will make it easier to separate the conversations, and I can resolve one without resolving the other.

I am not suggesting a different but clearer structure and aim. You already touch on the bullet points, but you have mixed things up at times. The draft was for instance quite confusing in that  you wrote familiar languages intended for us, as well as formalized others and given large recommendation intended for others. What I am suggesting is for you to do another pass with a clear structure and goals in mind, writing concise sentences without disgressions.
This document is not only for us (otherwise it would be internal) but also for the future users of the library and that should be clear too.  It is meant to present and explain our current and future design choices (Did we follow the paper? Why did we make these changes? Why did we implement only these algorithms? Why are they instantiated with hash functions?...). It also partially represents us publicly, and our background (your university, our company), so there is a fine line between a casual, friendly explanation (for instance this, but note it is a blogpost doing democratisation of knowledge) and informal language. By impersonal, I just meant that you should write "they" for unknown entities (you could write he/she if you were talking about Alice and Bob of course).

I am not suggesting a different but clearer structure and aim. You already touch on the bullet points, but you have mixed things up at times. The draft was for instance quite confusing in that you wrote familiar languages intended for us, as well as formalized others and given large recommendation intended for others. What I am suggesting is for you to do another pass with a clear structure and goals in mind, writing concise sentences without disgressions.
This document is not only for us (otherwise it would be internal) but also for the future users of the library and that should be clear too. It is meant to present and explain our current and future design choices (Did we follow the paper? Why did we make these changes? Why did we implement only these algorithms? Why are they instantiated with hash functions?...). It also partially represents us publicly, and our background (your university, our company), so there is a fine line between a casual, friendly explanation (for instance this, but note it is a blogpost doing democratisation of knowledge) and informal language. By impersonal, I just meant that you should write "they" for unknown entities (you could write he/she if you were talking about Alice and Bob of course).

It's not what I had in mind. This document is for the developers (us), the first sentence of the doc actually says that: "intended to guide the development of the library". Any documentation for the users will be in docs/ that Gamze is working on. What you thought of recommendations is just justification for the technical choices I proposed.


Existing MULTIPLIER length modifiers with default parameters are not invariant if the scale is set to 1 (feat: propose for new multipliers)

Hi @CarlottaSartore @GrmanRodriguez @AlexAntn ! For an internal project, I had to work with urdf-modifiers with a model different from ergoCub. As starting step, I wanted to setup the appropriate modifiers for the length.
The model that I used is composed by boxes, but to showcase my problem I prepared a simple model with two links (one cylinder, and one box) for which the length can be changed. The model can be found at https://github.com/traversaro/urdf-modifiers/tree/invariance/examples/models/twoLinks, and the script to showcase the unexpected behavior can be found at https://github.com/traversaro/urdf-modifiers/blob/invariance/examples/generateRandomVariants.py .
In this script, I load a model, and then I generate random variations of it, ideally changing the lenghts of the link1 and link2 links. As a preliminary step, I set all the scale to 1.0 and use the existing modifiers (i.e. setting 1.0 in https://github.com/traversaro/urdf-modifiers/blob/50e9acb5eba57815e6b547b8062cece32cc24872/examples/generateRandomVariants.py#L441/generateRandomVariants.py#L401 and False in https://github.com/traversaro/urdf-modifiers/blob/50e9acb5eba57815e6b547b8062cece32cc24872/examples/generateRandomVariants.py#L371), to make sure that if the length remain the same, the model is the same.
However, the following happens if I run this with the existing LinkModifier and JointModifier (used with default parameters, taking inspiration from @CarlottaSartore's script, but I may be doing something wrong):

(Red is the original model, Black the modified one).
I tried to set some parameters to ensure that the same model was given, but I could not find them, even because I may be missing some logic steps. To avoid being blocked, I instead developed a new modifier (named for now LinkAndJointModifier) that follows the mathematical rules that I will document in a different issue.

Sorry Silvio I don't understand. Is the problem that the axis changes direction?

Is the problem that the axis changes direction?

The joint axis always point in the same direction, it is the link that change direction, but yes, I would expect that if a relative multiplier is set to 1, the model shape would not change, but perhaps I am misunderstanding something myself. I wanted to fill the issue on the new multiplier I worked on, then we can have a discussion on that issue and also this one.

I think this could be due to flip direction value, but anyway let's first wait for the other issue :)
the https://github.com/icub-tech-iit/urdf-modifiers/blob/23d5517413e1ce765ab5857130f0b30f588b0430/urdfModifiers/core/linkModifier.py#L11

Thanks, that is probably it! Any clue of why by default is True?

Most weird behavior like this is carryover from the needs of the stickbot that needs to be more generalized

Thanks, that is probably it! Any clue of why by default is True?

I think (as @GrmanRodriguez  was pointing out) that this is due to the fact that for the stickbot, if I am not wrong, most of the links need it to be true!
Having a way to automatically generate such entries (as we discussed in #3) could prevent this issue since the needed parameters  will be automatically computed

Thanks, that is probably it! Any clue of why by default is True?

I think (as @GrmanRodriguez was pointing out) that this is due to the fact that for the stickbot, if I am not wrong, most of the links need it to be true!

Yes, that is what is puzzling me, I can't wrap my head on why this needs to be true. Anyhow, no problem, we can discuss about this in the meeting.

I tried to set some parameters to ensure that the same model was given, but I could not find them, even because I may be missing some logic steps. To avoid being blocked, I instead developed a new modifier (named for now LinkAndJointModifier) that follows the mathematical rules that I will document in a different issue.

New modifier (for now, without hardcoded parameter) described in https://github.com/icub-tech-iit/urdf-modifiers/issues/11 .

Yes, that is what is puzzling me, I can't wrap my head on why this needs to be true. Anyhow, no problem, we can discuss about this in the meeting.

It relates to #7. In the stickbot links in the arms and legs go from the highest one to the lowest one (e.g. in the arm the shoulder is at a higher Z than the hand and in the leg the hip joints are higher than the feet) so we needed the joints to move down when you increase link height.
flip_direction was used around the torso because those joints go from lowest to highest.
Anyways the point is, when we deal with #7 this should be also taken care of.


Fix suboptimal 242. valid-anagram c++ solution

File(s) Modified: 0242-valid-anagram.cpp
Language(s) Used: C++
Submission URL: _https://leetcode.com/problems/valid-anagram/submissions/1361936517/_

The original solution passes, but unintentionally inserts ~100 elements into the hashmap because of this loop setup
for (int i = 0; i < s.size(); i++)
  if (s_count[i] != t_count[i]) return false

Using ints as indices when the keys should be chars, it converts them to chars and continuously inserts into the map (due to using operator []) until reaching the ascii range for lowercase letters (which is what the maps actually are supposed to store). Eventually the loop is able to end because all of keys that already exist in the hashmap are checked.
This new solution implements the original intended logic, directly comparing character counts between the two hashmaps rather than starting at index 0.

+1, the existing solution is fairly non-obvious as to why it works until you realize that this insertion is taking place

@rikipls Good Suggestion 👍 Thanks for your contribution.


Initial pre-commit support.

See also: #259
Most of the checks are currently commented out because it's going to "clean up" a lot of files (and will flag many more as needing manual intervention). I thought I'd enable them one at a time and submit a PR with the changes. I also need to see how to use the pytest support given our somewhat ad hoc venv approach (the checks run in their own isolated virtual environment).
To use this:
pip install pre-commit  # or however you are installing feditest dependencies

# add a git hook to invoke pre-commit before a push
# the pre-push git hook is defined as the default
pre-commit install

# to run manually
pre-commit run -a

# to run a specific check manually
pre-commit run -a <check-id>

# to bypass the pre-commit hook
git push --no-verify

The NOCOMMIT check supports putting that string in a file somewhere to prevent it from being committed (or pushed in this case).
def some_function():
  hacked_up_stuff = "foobar" # NOCOMMIT
 ...

Are you still working on this or is this ready to merge?

Are you still working on this or is this ready to merge?

Ready for initial merge.


"Suggestions with different label and value" - feature seems to have an issue

var input = document.getElementById("myinputs");
new Awesomplete(input, {
list: [
{ label: "Belarus", value: "BY" },
				{ label: "China", value: "CN" },
				{ label: "United States", value: "US" }
			]
		});
I tried this code but what it does is not what is expected.
typing in US should display 'United States' but it displays 'belarUS'.

I've tried putting the javascript before and after the body but it still does not work.
I also checked it via Chrome's developer tools but there was no error returned.
Please help.

This ism expected behavior consistent with what the documentation says on https://leaverou.github.io/awesomplete/
// Show label but insert value into the input:
When Awesomplete searches, it searches and displays labels. If an option is selected, the text input is populated with the value.
For example, had you selected "Belaraus" from the suggestions, the input would have the value "BY" not "Belarus".

@bbenjamin I appreciate the prompt response and I apologize for misinterpreting the documentation.
Anyway, I'll go out on a limb here and ask since I guess you know this stuff well if you know of a way to accomplish what I, for the past few weeks, have been searching the internet for. It would really help me in my current project man. A little desperate over here.
Any help will do! Thank you and take care!

@namelessbillionaire Have you tried using a custom search function?


"failed to load routines: "routines.map is not a function""

I have a refresh cookie flow that fires on a regular interval.
A new cookie is successfully downloaded, but the following error is thrown...
"failed to load routines: "routines.map is not a function""
Has anyone else noticed this issue which started after I performed the @cakebake update?
I am on a Windows 10 machine with latest releases of npm and node red, and the cakebake update.
I had the "no body" error until I did the @cakebake update in #191 and then this new error presented.

It's so sad this node is falling apart.. I really home some dev comes save it. I'd be happy to donate.

For me I am most grateful to the likes of @cakebake for their great efforts on this node.  Yes, there are still some issues, but he and others have contributed selflessly to tweak it to a point where we have the necessary functionality back.  I think my problem is an outlier and even with the error, everything still works for me.  So do follow issue #191 as that's where the real substantial help is coming from!

I discoverd that this error occurs when there are no Alexa routines...
I simply created a dummy routine and the error is no longer there!

I discoverd that this error occurs when there are no Alexa routines...
I simply created a dummy routine and the error is no longer there!

Just to be clear, do you need to make a routine in the Alexa app, rather than one in node red, for the issue to disappear?


[Feature Request] CalDAV

Hey guys, thanks for your excellent work. I just wanted to ask if it is anyhow possible to integrate a CalDAV Calendar into the Rainloop Suite.
I am looking forward to an answer. Many Thanks
-Theo

+1

+1

+1

+1

+1


[create] element and class definition should not be separated in all cases

Separating the class definition and the call to customElements.define is inconvenient. It may make sense in some cases when building reusable components, but not when building components for own usage. I think we should not set this up when scaffolding an application.

It may make sense in some cases when building reusable components

I don't think it makes sense even in this case. Since there's a 1-1 relationship between tagname and class, you can't actually separate the definition for reusable components, because if one consumer registers the element with one name, other consumers will be prevented from registering with another name. The component in all practicality must register itself.
If other consumers want to register with a different name, they can register a trivial subclass.

That's true... but if a consumer wants to reuse just your class definition to subclass it it's better if they don't also get the custom element definition for free.
I don't know how much of a use case it is though, I'm not particularly tied to this concept.

I'm pretty sure that THE use case for these not living together is when an application is already using an element defined at my-element and then wants to import a new element class called MyElement that is by default registered as my-element but wants to use it via a different name without, knowing that it isn't a dependency of other dependencies. This can be separately worked around via tree shaking of side effects, so it might not be an issue, however in a situation where you're running with no tools/build there is no way to approximate this end result of which I am currently aware.

@Westbrook is the application going to subclass the element? Have you seen this in practice?

At the intersection of lack of discoverability (with the aging of webcomponents.org and the only early development of https://catalog.open-wc.org/) and me being pretty hardheadedly stubborn, I don't often afford myself the luxury of relying on third-party components, so no I've not seen this practice. However, there's a little Paul Kinlan whispering in my ear about beautiful open/layered web possibilities that may never actually come to pass: https://paul.kinlan.me/custom-elements-ecosystem/
In the case above the ability to subclass or not isn't really the question, it's not having the registration crash because the new element automatically stepped on the previously used element name. I agree that it's an edge case now, but it's hard to say the realities that bring that into being (an as yet smaller web component community and aggressive namespacing in larger-scale libraries) is something that we can rely on in the long term. Hopefully scoped registries come soon! However, for now, there is a sizable enough number of cool-button demos to hope that the problem gets worse (from an expanding community) before new API is able to be agreed on/implemented to make it better.

After discussion we decided to keep it the way it is for the component generator, but remove the abstraction from the app generator.
The rationale for the component generator is that index.js should be side effect free, any side effects should be separate imports.

This was suprising to me btw.
Especially as you also don't mention it in i.e. https://open-wc.org/codelabs/intermediate/lit-html.html?index=/codelabs/#9 where you just "import" another component and use it.
I added the app starter and the component starter, and bound them together by an import, then wondering why I had to suddenly register it, whilst your docs was saying something else.
Having a default-export that does define/register the component, and using a /path if you want to use another name should work.
I think this will be hard to explain and it will make third-party components harder to just use since it won't be clear how you're supposed to use it.

The problem here is that registering components is a side effect, one that can't be undone.
A package entrypoint should never contain any side effects, each side effect should be opt-in with a separate entrypoint. This is best for tree shaking and bundling, and generally for predictability. @daKmoR convinced me of this :)
For web components scoped custom element registries will make this a more common best practice.
We're sticking to our current recommendations, I'll close this issue now.

Not so hot on the scoping either. But the guide should probably say something on the "material button" import, -- something like "// unlike open-wc, this component self-registers, so you don't need to customElements.define it", maybe.


Audio player not working in firefox

I have tried this:
http://www.videogular.com/examples/creating-an-audio-player/
And if i do it in chrome it works just fine, if do it in Firefox not.

Did you see any console errors?

No nothing, Strange ching is video is working with audio.

Could be a codec problem, can you try your audio file with a simple audio tag just to test it works as expected outside Videogular?
<audio src="my-file.mp3" controls></audio>

Yes that works.

I've tested this example on Firefox 33 with Ubuntu 15.04 and it works as expected.
http://codepen.io/2fdevs/pen/tguGx
Could you try with that example and tell me if it works?

On my windows 10 machine it works, gone try tonight on my pc with ubuntu 14.04.

On my Ubuntu 14.04 with firefox 38 it does not work.

If this occurs only on that ubuntu version than it's not an problem, because the people who are going to use it are not running ubunut ;)

Yes, I've tested on Firefox 38 for Mac OS X and it works.
Thanks anyway for testing. Closing this.


tomcat_install refactoring

Description
Refactors tomcat_install by abstracting many values into functions (moving to a helper library) in preparation for eventual Windows support.
Adds create_symlink property for those that do not want to create a symlink
Check List

[x] All tests pass. See TESTING.md for details.
[ ] New functionality includes testing.
[x] New functionality has been documented in the README if applicable.

@jakauppila were you planning on adding some additional tests?

@ramereth I wasn't planning on it since this doesn't really add additional functionality to what's already being tested.
If there's anything additional you'd like to see, I'd be happy to add it.

@jakauppila it might be nice to at least have some new unit tests for the helper library. Also, it might be good to test out some of the new parameters to ensure they actually work properly.
In addition, could you please update the changelog?

@ramereth Added inspec tests for the properties and unit tests for the library. I'm not familiar with mocking with rspec, so I don't have tests for fetch_tomcat_checksum or validate_tomcat_checksum.


Fix issues & migrate to Kotlin

I don't know why I undertook the journey to migrate this whole plugin to Kotlin, but I had fixed multiple issues along the way and made the codebase way more readable ;)
Fixes #5
Fixes #4

Hi @Xerus2000 . I like Kotlin. Does this PR, change the way that the plugin is used? does it change the behaviour in some way that would break existing users? If there are any such changes please update the ReadMe accordingly.
Also, are there any more general aspects of the change that affect the ReadMe in some way - please (if you haven't already done so) check the ReadMe to ensure that all of it is still relevant and correct and fix anything that isn't?

The code is already half a year old, for some reason I didn't submit the code at that time, so I have to look into it again. But I think I have used the plugin successfully at the time.
I will try it out again and have a closer look when i have some spare time.

Could you also look into this? I can't really find the time right now.
I think that I basically only changed the things related to the issues.


fix: property info caching if another bundle is decorating cache

resolves #47

https://github.com/rekalogika/mapper/pull/50/files#diff-5f72e3307485443dc93e5d532066ed30c7e06aab0ea71cfad313ce07fafdb9e9R22

oops. fixed that in #51


[AccountAbstraction]Session Key

Motivation
The session key is a specific type of authentication key with the following features:

Its lifespan is limited, and it becomes invalid after expiration.
Its usage is restricted to specific purposes, such as invoking functions within a designated module.
Automatic renewal can be implemented based on the last usage time.

So, the App can store the session key in the App storage(such as the browser storage), and enabling automatic transaction signing without constant interaction with the wallet enhances the user experience.
Solution
The session key solution is dependent on the #460
How to indicate that a transaction has used a session key?

Implement SessionKey as a special Authenticator base on Authenticator Abstraction.

Pros: It appears simple and isolates the logic for session keys.
Cons: It can become complicated if SessionKey needs to support different authenticator schemes.

Implement SessionKey as part of the Account. Attempt to retrieve the authentication key from the account and, if it is a session key, follow the validation process specific to session keys. Otherwise, proceed with alternative validation procedures.

Pros: SessionKey can reuse the authenticator scheme.
Cons: It strongly impacts the account and transaction validation processes.

Finished, the document needs to be improved. #468


WSC: configlist

WSC: configlist
This web service provides a list of all configurations for a schema (app, module and version combination).
Request
GET /configlist

This web service will expect appName, moduleName and versionNumber in the query string. All the fields are mandatory.
Example:
GET /configlist?app=FinanceApp&module=PaymentGateway&ver=2

Processing
Upon receiving a GET request to this endpoint, the Rigel service performs the following steps:

Retrieve Configurations

Fetches all named configurations from the etcd store.
The keys are expected to be structured as /remiges/rigel/[AppName]/[ModuleName]/[VersionNumber]/[ConfigName]

Response
{
    "configurations": [
        {
            "app": "FinanceApp",
            "module": "PaymentGateway",
            "ver": 2,
            "config": "ProdConfig",
            "description": "Configuration for production environment of the PaymentGateway module in FinanceApp.",
        },
        {
            "app": "FinanceApp",
            "module": "PaymentGateway",
            "ver": 2,
            "config": "TestConfig",
            "description": "Configuration for test environment of the FinanceApp module in TestConfig.",
        },
    ]
}

Errors

app_not_found: The specified application does not exist.
module_not_found: The specified module does not exist within the application.
ver_not_found: The specified version of the module does not exist.


Must WSLg run on WSL2?

Must WSLg run on WSL2? My Windows 10 version is 1803 and I have difficulty in upgrading to WSL2. So, I hope I can run WSLg on my Windows 10 command window by simply typing wslg, and then I can run ubuntu GUI software that needs GPU acceleration without seeing any error messages.
Please let me know if it is feasible, or just a rejoice too soon.

tl;dl WSL1 is not capable of handling all the requests from the components of WSLg.

It's probably pretty close to impossible to get wslg to run on top of wsl1, as if leans into the image foundation that wsl2 uses for it's system distro support

For some reason, I can't upgrade my Windows version. If I install a newer Windows in a VM and install WSL2 in it, can I run WSLg on this WSL2? Is there any requirements for the VM hypervisor? Is VMWare Workstation 15 Pro OK, or do I have to use Hyper-V?