[HOLD] Show report history between two users

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Problem
There is no central place dedicated to viewing reports on e.cash, which forces users to scroll back through many chats in a 1:1 in order to see their IOUs.
Solution
Use the Avatar > Profile Pattern from the User Settings doc to show a report history between individuals. Users can access this new page by tapping the other user’s icon from within a 1:1 DM. A user can take two actions from the page:
Pay an unsettled IOU if one exists. Tapping the preview component of an unsettled IOU will bring the user right to the confirmation screen. While users can already take action on an unsettled IOU from within the DM, this is another good opportunity to push them to settling up.

View all open jobs on Upwork
Upwork post https://www.upwork.com/jobs/~01a50e1742b044670a
e/e repo issue https://github.com/Expensify/Expensify/issues/165743

Triggered auto assignment to @NikkiWines (Exported), see https://stackoverflow.com/c/expensify/questions/7972 for more details.

@NikkiWines I'm interested in this one!
Looks like we would need an API endpoint to get a list of IOU reports for a given chat? There doesn't seem to be one right now.
Without this, I think the best we can do is to look for IOU reports when we call API.Report_GetHistory to get the chat history. But I feel this wouldn't meet our goal of not forcing

users to scroll back through many chats in a 1:1 in order to see their IOUs.

since we would only be able to list in our Payment History screen the IOUs that have been loaded on the chat via the API.Report_GetHistory calls.
Other than that, we just need to create a new route for the Payment History screen and display the appropriate IOUBadges.
I think it would make sense for this screen to have the same behavior (design, animation direction, etc) as the Details screen, but we can fine-tune it during the PR!

@rdjuric thanks for your proposal, this actually should be marked External so no worries there
We store report history between users in ONYX under reportActions_##, so you could probably utilize that to get the IOU requests between users in a chat.
Could you please provide a little more detail as to your implementation?
cc: @Julesssss since you have familiarity with IOUs and might have thoughts on potential implementations

Triggered auto assignment to @NicMendonca (External), see https://stackoverflow.com/c/expensify/questions/8582 for more details.

@NicMendonca I'm OOO til 5 July, so am reassigning my chores. Thanks.

Looks like we would need an API endpoint to get a list of IOU reports for a given chat? There doesn't seem to be one right now.

We store report history between users in ONYX under reportActions_##, so you could probably utilize that to get the IOU requests between users in a chat.

The problem here is that paginated chat means that we will only be able to retrieve iouReports for those actions that were included in the paginated response -- so we'll need a new API. I think we'll need to persist the full iouReport data for each report here, as creating a new collection for a further simplified report object makes things even more complicated. Because of this, we should also plan to implement storage eviction, to avoid the storage limit being hit by the newly stored IOUReports.
Also, users should now be able to view the full IOU Details page by tapping anywhere on the Preview component, not just the pay button

@Julesssss What I think is that strategy should be as follows:

When the report is loaded we could have a few IOUreports already loaded which I think would be the latest as we load chat in reverse chronological order.
So when a user opens the page, we show already loaded reports and a loader underneath while we hit the API and get the data. We can keep this data in memory until the lifetime of the app if required.
API response will be paginated and it should be quick, should take only 2 secs. So as the user scrolls more reports will be loaded.

Also, users should now be able to view the full IOU Details page by tapping anywhere on the Preview component, not just the pay button.

I think it's already added.

When the report is loaded we could have a few IOUreports already loaded which I think would be the latest as we load chat in reverse chronological order.

Yeah, they might do but we can't guarantee it. If a user has an active IOU that will be stored locally, as well as any paid IOU reports that they have clicked view details on, and any that haven't been cleared out.

...We can keep this data in memory until the lifetime of the app if required.

Driving views from a non-Onyx, in-memory source is new and something I believe we would want to avoid. Do you have any ideas for how we could do this via Onyx? I think we would prefer to use the storage eviction and have all data in Onyx.

API response will be paginated and it should be quick

Paginating the getIOUReport API sounds like early optimization to me. There's no reason to believe this API will be slow enough to warrant that. Have faith in Bedrock 😄

I think it's already added.

Yeah, the steps for this issue need to mention that -- as the screenshot suggests otherwise.

yeah. Overall thinking. Onyx should be the way. Don't know about storage eviction in Onyx yet.

I don't think it's fully proven yet to be honest. It looks to me like the storage eviction works for all objects of a specific key/collection -- but we need to ensure that certain objects are excluded.

Yeah, we may need to build a wrapper around the Onyx or maybe in onyx itself.

@NikkiWines I think we'll be blocked here on both the new API and Onyx storage eviction. Maybe let's hold for now?

I'm afraid I can't pick this issue up at the moment. To help move this forward, this is what I think the next steps should be:

Create an investigation issue to look into selective Onyx storage eviction (this requires a lot of further discussion as it makes big changes to the app, and might not end up being a desired solution)
Create an issue for creating a new API which returns all IOUReports

The main problem here I see is that Onyx storage eviction is a potentially disruptive change, and as this is the only issue it currently blocks we might struggle to prioritize it over other tasks.

Cool, based on this feedback I think this issue shouldn't be on Upwork yet, as it's requires a lot of investigation as well as some non-E.cash changes before we could move ahead with any proposal.

@NikkiWines are you able to lead the charge on follow up issues? Or are there certain engineers that would be well suited to do so?

Unfortunately, I can't take on handling the follow up issues for this. I think @Julesssss probably has the most context for these issues having built out our IOU functionality, but not sure what his workload is like.

I can probably assign and work on the IOU API sometime next week, but the Onyx storage eviction is a larger project which I'm not able to take on currently. Maybe that is for the best, as we will have a better idea of the Onyx issue once all the IOU reports are being retrieved.

@NikkiWines, @NicMendonca Whoops! This issue is 2 days overdue. Let's get this updated quick!

@NikkiWines should I cancel/ close the job on Upwork?

NVM, it is already closed 😅 Feel free to re-assign me if/ when you want me to put it back on Upwork.

Most likely not I'm afraid, I will keep watching this task though, and assign it as soon as possible.

Removing my assignment since I can't take this on at the moment

Add Planning label since it's on hold, to help with GH searching by label

Huh... This is 4 days overdue. Who can take care of this?

moving this to Weekly while it's in planning still?

it looks like no one is assigned to work on this job.
Please double the price or add a comment stating why the job isn't being doubled.

I have the free cycles to pick up the IOU API as part of this project, but seems like we should make another issue for Onyx storage eviction?

I have the free cycles to pick up the IOU API as part of this project, but seems like we should make another issue for Onyx storage eviction?

I would suggest starting a Thread in Slack to discuss whether we think Onyx storage eviction is a prerequisite for this task or not. It's adding a lot of local data but maybe we can live with that for now.

Starting on this later this week / early next.  I'll get a thread started for the storage eviction.  From a glance it doesn't seem necessary at this moment but would be good to get the ball rolling on that

From the slack thread, we won't have to worry about storage eviction and probably won't run into any issues unless we have a HUGE report and HUGE ioureport.  As far as internal implementation, I've created the PRs and have them going into review.

PRS are approved and ready to merge but holding for n6

This issue has not been updated in over 15 days. @thienlnam eroding to Monthly issue.
P.S. Is everyone reading this sure this is really a near-term priority? Be brave: if you disagree, go ahead and close it out. If someone disagrees, they'll reopen it, and if they don't: one less thing to do!

This issue has not been updated in over 15 days. @thienlnam eroding to Monthly issue.
P.S. Is everyone reading this sure this is really a near-term priority? Be brave: if you disagree, go ahead and close it out. If someone disagrees, they'll reopen it, and if they don't: one less thing to do!

Auth PR merged, Web-PR is ready to be merged

@thienlnam, this Monthly task hasn't been acted upon in 6 weeks; closing.
If you disagree, feel encouraged to reopen it -- but pick your least important issue to close instead.

Looks like this got lost in the sea of holds
The web and auth PRs have been merged a while ago

https://github.com/Expensify/Web-Expensify/pull/31895
https://github.com/Expensify/Auth/pull/5926

The internal side of this is complete, do we still want to move forward with this? @laurenreidexpensify
If so, we can make this external (or maybe create a new issue) for it

Hm, I actually don't think we should follow through with this one, for a few reasons:

The user profile is growing to show more information as part of the Account settings doc, so this will be buried.
We are now using the same chat pattern for business cases, which may mean we want to pivot on this design so it works better across all cases.

Basically I'm not certain this is the best solution at this stage, and given the original plan was drafted nearly a year ago, it might be worth putting this on hold and rethinking a more up-to-date solution. Also curious for @JmillsExpensify and @trjExpensify thoughts on this since y'all were a part of the initial discussions.

Yeah agree with @kevinksullivan. In addition to his reasoning, I'd add: think we're actively moving away from these kinds of dedicated "lists" in product. Even more so, we've recently decided in N7 to punt building a similar-looking page for todos that would serve an analogous function. +1 to not move forward, though thanks so much @thienlnam for all your hard work!

👍 Sounds good to me! I will go ahead and create PRs to revert the changes made


Ubuntu 22.04 - no obvious errors, but no components get installed

Has something changed in the sources?  I have no deleted the failed VM and reinstalled a newer version (Ubuntu 22.04) and did the following as root:
apt update
apt upgrade
apt install curl tzdata
dpkg-reconfigure tzdata

(set the timezone to Africa/Johannesburg)
dpkg-reconfigure locales

(set the default to en_ZA.UTF-8)
from the /root directory:
curl -L https://power-mailinabox.net/setup.sh | sudo bash

The script installs the dependencies, adds en_US.UTF-8 to the locales, prompts for the admin user, servername and this:
Mail-in-a-Box Version:  v60.5

Updating system packages...
Installing system packages...

Current default time zone: 'Africa/Johannesburg'
Local time is now:      Fri Jul 26 09:14:31 SAST 2024.
Universal Time is now:  Fri Jul 26 07:14:31 UTC 2024.

Initializing system random number generator...
Creating SSH key for backup…

If a re-run mailinabox, nothing more than this is repeated.
This is crazy,  I have multiple people that run mail servers with this exact process and it just installed fine.  Now it doesn't.

Even running bash -x setup/start.sh reveals no errors, but the sources listed are just not run.
# Start service configuration.
source setup/system.sh
source setup/ssl.sh
source setup/dns.sh
source setup/pgp.sh
source setup/mail-postfix.sh
source setup/mail-dovecot.sh
source setup/mail-users.sh
source setup/dkim.sh
source setup/spamassassin.sh
source setup/web.sh
source setup/webmail.sh
source setup/nextcloud.sh
source setup/zpush.sh
source setup/management.sh
source setup/munin.sh

The file creation process just before that happens though.
cat > /etc/mailinabox.conf << EOF;
STORAGE_USER=$STORAGE_USER
STORAGE_ROOT=$STORAGE_ROOT
PRIMARY_HOSTNAME=$PRIMARY_HOSTNAME
PUBLIC_IP=$PUBLIC_IP
PUBLIC_IPV6=$PUBLIC_IPV6
PRIVATE_IP=$PRIVATE_IP
PRIVATE_IPV6=$PRIVATE_IPV6
GNUPGHOME=${STORAGE_ROOT}/.gnupg/
PGPKEY=${DEFAULT_PGPKEY-}
MTA_STS_MODE=${DEFAULT_MTA_STS_MODE:-enforce}
EOF

However, vim doesn't understand the EOF; that's set a delimiter and then EOF (without the ; at the end), so could that be the reason?  Why is there a ; after the EOF in the first place?
I see that earlier in the script as well.
cat > /usr/local/sbin/mailinabox << EOF;
#!/bin/bash
cd $(pwd)
source setup/start.sh
EOF
chmod 744 /usr/local/sbin/mailinabox

It looks like the script just exists without regarding the 'source' commands.

It seems the code block that's causing the problem is the firewall installation part in setup/system.sh when one runs it from an ssh session.  Running it from the console (without ssh) completes the installation successfully.
# ### Firewall

# Various virtualized environments like Docker and some VPSs don't provide #NODOC
# a kernel that supports iptables. To avoid error-like output in these cases, #NODOC
# we skip this if the user sets DISABLE_FIREWALL=1. #NODOC
if [ -z "${DISABLE_FIREWALL:-}" ]; then
        # Install `ufw` which provides a simple firewall configuration.
        apt_install ufw

        # Check if we have got an SSH server installed.
        # It's not critical for us to have one, so if it isn't installed,
        # no need to open the port
        if [ -x "$(command -v sshd)" ]; then
                # Allow incoming connections to SSH.
                ufw_limit ssh;

                # ssh might be running on an alternate port. Use sshd -T to dump sshd's #NODOC
                # settings, find the port it is supposedly running on, and open that port #NODOC
                # too. #NODOC
                SSH_PORT=$(sshd -T 2>/dev/null | grep "^port " | sed "s/port //") #NODOC
                if [ ! -z "$SSH_PORT" ]; then
                        if [ "$SSH_PORT" != "22" ]; then
                                echo Opening alternate SSH port $SSH_PORT. #NODOC
                                ufw_limit $SSH_PORT #NODOC
                        fi
                fi
        fi

        ufw --force enable;
fi #NODOC

What in this code crashes the script on Ubuntu 22.04?

Has anyone else experienced this?  I have been able to repeat this and it seems that something has changed with ssh.  I just have not been able to figure out what yet.


Add option to echo input values

For debugging purposes.

Also we should add an easter egg where is occasionally echos "lobo!" to the end of error or help output.


Update telegram-alpha to 3.8.3-124408,1012

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.
[x] The commit message includes the cask’s name and version.

Closed in favour of https://github.com/caskroom/homebrew-versions/pull/5644.


Run php-cs-fixer to resolve CI failures

Thank you @ben-challis ! Can you review and merge, please @fain182 ?


Any geopy-like project, but for routing?

Sorry, this is not an "issue" for geopy, and this might not be the best place to ask, but I haven not found a better one. I wonder if there is a project similar to geopy, but for generating routes from A to B? So a project like pyroutelib3 would be one plugin, namely for OSM) with a list of siblings for other providers?

Perhaps Stack Overflow would be a better venue for this question?
I haven't heard of such a library, and I would be surprised if there is such one, as calculating routes is usually tightly coupled with UI (i.e. the calculated route should be shown to the user), where Python is rather rare. Some services also provide online APIs for that (e.g. Google), while most of them don't (e.g. Nominatim).
That said, the providers would be too different with each other, so, IMO, making a common abstraction for them would be very problematic (and probably not very useful, in terms of demand).
For a single provider routing implementation you may find the following links helpful:

https://wiki.openstreetmap.org/wiki/Routing
https://github.com/gboeing/osmnx
https://github.com/graphhopper/graphhopper
https://developers.google.com/maps/documentation/directions/intro

I has very similar thoughts and agree a lot. Application/UI-wise, well that depends a lot on the application. I'm playing quite a bit with ipyleaflet now, and I can see many interesting use-cases, including routing. But still thanks! I'll close this now.


Mark modules using legacy @ConfigRoot as such

The new extension annotation processor coming with 3.14 requires that you mark the modules using the legacy @ConfigRoot approach (i.e. without @ConfigMapping) with a specific annotation processor parameter.
This is important for the generation of the config documentation (which is enabled by default).
This can be merged pre-3.14 update but will result in a warning when building. With the advantage of having the build with main passing.
I think I have marked all of them but in any case, if you have an error, you now know what to do.
Fixes https://github.com/quarkusio/quarkus/issues/42417

At your disposal if you have any questions about this change!

I added more details here: https://github.com/quarkusio/quarkus/wiki/Migration-Guide-3.14#extension-developers
Note that by applying just this patch, you will get a warning when compiling the test classes (as given you don't have a config annotation, the annotation processor will not be triggered and you will get a warning telling you the parameter is unused).
Ideally, you would adjust to only run the annotation processor for the main classes as described in the doc but I didn't want to be too aggressive on your codebase :).
Feel free to do it if you think it makes sense.

Thanks @gsmet!
I can follow up with any additional tweaks.


Need to get the base64 content of files attached by user

I have a requirement to get files from users and send its content to my backend which accepts filecontent as base64 encoded.
I used the "File or Attachment" input to get the file attached by user in the chat window. This returned a json as below:
[{"contentType":"application/octet-stream","contentUrl":"https://smba.trafficmanager.net/apis/v3/attachments/0-sa-d4-6e8441b1dfa41f0bf317b67a50c52fa9/views/original","thumbnailUrl":"https://smba.trafficmanager.net/apis/v3/attachments/0-sa-d4-6e8441b1dfa41f0bf317b67a50c52fa9/views/thumbnail","name":"output-6.json"}]
Then I did a GET of the contentUrl. I see two issues here:

For text files like json, I got an array of ascii values, which I am not able to convert to a base64 encoded format.
For PDFs, I got non-readable format, which again I am not able to convert to a base64 encoded format.

Please suggest a way for me to get the base64 encoded format of files that are attached by users in the chat window. I need support for PDF, csv, json, txt, xls, doc.
I use the below version:
Version:  2.1.1
Electron: 8.2.4
Chrome: 80.0.3987.165
NodeJS: 12.13.0
V8: 8.0.426.27-electron.0

The Handling Attachments sample (C# linked, but samples in the other 3 supported languages are also available) shows how to get attachments from users and convert them to base64. Most languages, including those used by the Bot Framework, support base64 conversion with built-in standard library functions (the sample shows this in use). You might also want to double check in your code what kind of files your users are inputting and validate them to ensure your bot can handle them. You could for example prevent your bot from trying to process a corrupted or otherwise unreadable format and instruct the user to upload a valid file.
Furthermore, The Microsoft Bot Framework team prefers that how to questions be submitted on Stack Overflow. This issue will be closed, but if you have a bug or feature request, please feel free to open a new issue in the appropriate repository.

Thank you. However, I am using the bot framework composer and I have not written any custom code. So, does it mean that there are no pre-built functions to accomplish what I need and that I should write custom code to achieve this?

Oh sorry, I thought this was an SDK bot. Composer is a bit different. Here are the docs for getting user input in Composer, one of which is attachments.
If your file type isn't natively supported, custom actions are a valid option.

Yes, I am using the user input you have quoted. The issue I face is mentioned below. Or, please point me to a good documentation that explains how I can write custom actions in Node and use the same in Composer.
I used the "File or Attachment" input to get the file attached by user in the chat window. This returned a json as below:
[{"contentType":"application/octet-stream","contentUrl":"https://smba.trafficmanager.net/apis/v3/attachments/0-sa-d4-6e8441b1dfa41f0bf317b67a50c52fa9/views/original","thumbnailUrl":"https://smba.trafficmanager.net/apis/v3/attachments/0-sa-d4-6e8441b1dfa41f0bf317b67a50c52fa9/views/thumbnail","name":"output-6.json"}]
Then I did a GET of the contentUrl. I see two issues here:

For text files like json, I got an array of ascii values, which I am not able to convert to a base64 encoded format.
For PDFs, I got non-readable format, which again I am not able to convert to a base64 encoded format.

Please suggest a way for me to get the base64 encoded format of files that are attached by users in the chat window. I need support for PDF, csv, json, txt, xls, doc.

Here is the documentation for custom actions. The docs are in C#, but there is also a Node sample.

I did look at those and downloaded the same too. In the  custom actions  doc, the section "Setup the component project" talks about instructions in C# bot using Visual Studio, whereas my main composer bot is in node. So, I need to know how to how to add the customaction (node) to my node composer bot using Visual Studio Code.

There are corresponding files in the Node sample, which is why I linked it. For example, the package.json file has the list of dependencies that the sln file contains in C#

Please direct all further how to questions to Stack Overflow.


[Improve]Optimize packaging dependencies

We just need to introduce the parent dependency instead of manually introducing the corresponding submodule each time

Good job!

I forgot, this does not work, maybe we can create a new connector-v2 module, but that adds to the workload and makes no sense.


Change git repo of s4 to open-swift

Change the package URL to https://github.com/open-swift/s4.git for S4, otherwise the package cannot be build.

Currently waiting for Hummingbird PR, otherwise the builds keep failing...
https://github.com/qutheory/hummingbird/pull/1

Thanks @dylangyesbreghs I moved this commit on top of #186


Update to nginx 1.9.5 with HTTP/2 support

:metal:

Just out of curiosity, would it be nice to use http2 upstream? haven't tried if that is part of the http2 nginx support.

LGTM

Thanks @rarous!


function that returns union with void can be incorrectly narrowed

Bug Report

🔎 Search Terms
void narrow
🕗 Version & Regression Information
4.6.0-20211117
⏯ Playground Link

Playground link with relevant code
💻 Code

const a: (value: number) => void = (i) => i
const b: (value: number) => void | string = a

const v = b(1)
if (v) {
    v.toUpperCase() //runtime error: v.toUpperCase is not a function
}

🙁 Actual behavior
no error
🙂 Expected behavior
value doesn't get narrowed. perhaps void should not be falsy because you can't be sure its value will be falsy at runtime

Related: #42709

I think we should do some patchwork and just disallow writing void | T in --strict. It's never what you want.

@RyanCavanaugh based

I think we should do some patchwork and just disallow writing void | T in --strict. It's never what you want.

i don't think so void !== undefined
function convert<T>(t: T): void | T { // ok
  if(typeof t === 'string') {
    return t
  }
}
function convert2<T>(t: T): undefined | T { // error here "A function whose declared type is neither 'void' nor 'any' must return a value"
  if(typeof t === 'string') {
    return t
  }
}

@mdbetancourt noImplicitReturns means no implicit returns. If you don't like the error in the second case, you should turn that option off.

what about this case extending his case
const a = (i: number[]) => i.forEach(console.log)

const b: (value?: number) => void | false = (v) => v ? a([v]) : false
                                               ^ undefined or anything else is not gonna work

unknown is equally correct there. We could change forEach to return undefined and then it can be undefined | false.

but that could break some codes isn't? e.g:
function voidFn() {}

const log = [].forEach as () => undefined
const h: typeof log = voidFn
//    ^ Type 'void' is not assignable to type 'undefined'

a real case could be
function altLogger(text: string) {}

// if you change forEach signature you have to change every void signature then
const log = console.log as (text: string) => undefined
const h: typeof log = altLogger
//    ^ Type 'void' is not assignable to type 'undefined'

what about this case extending his case
const a = (i: number[]) => i.forEach(console.log)

const b: (value?: number) => void | false = (v) => v ? a([v]) : false
//                             ^ undefined or anything else is not gonna work

I think this should error, and a function should not be able to return a union that includes void. It either returns something or not at all.

Here's another example of the issue, this time without direct use of void | T:
function run (fn: (() => void) | (() => number)): number {
  const v = fn(); // results in void | number
  // void behaving like undefined
  if (typeof v === "object") {
    v; // never
    return -1;
  }
  if (v !== undefined) {
    return v; // TS thinks it's a number (but could really be anything)
  }

  return -1;
}

const foo = () => "hello";

const num: number = run(foo); // allowed because void allows any return value but ends up returning a string that thinks it's a number

typeof num === "string";

playground

I think we should do some patchwork and just disallow writing void | T in --strict. It's never what you want.

@RyanCavanaugh I don't think that will cut it. In the example above you don't need to write it, TS will infer it. I suppose you could disallow any union containing void somewhere no matter how deep, that seems complicated though and might be overly limiting. What about any time TS encounters void | T either explicitly or inferred it converts it to unknown?

I agree with @robbiespeed 's analysis. Really the only "good" fix here is #42709, so let's just track this there.


FPN Problem?

I wanted to modify the fpn so that it just down sampling two times,what shou I do in the faster_rcnn_dconv_c3-c5_x101_32x4d_fpn_1x.py

You need to write a new neck module following the guide of https://github.com/open-mmlab/mmdetection/blob/master/GETTING_STARTED.md#develop-new-components


add sambamba markdup sample log files

Thanks for the suggestions, the organization looks better now.
Is it a good idea to also make similar changes to the original PR in ewels/MultiQC? e.g. MultiQC/multiqc/modules/sambamba/markdup.py

Great! Ah yes please, I'll add a comment there.
x-ref https://github.com/ewels/MultiQC/pull/1417


Support sending stream

h3 support: https://github.com/unjs/h3/pull/68 is landed for Node.js compatible environments.
We might need to improve unenv mocks as well to universally make stream support available.
Currently waiting for h3 Event API to be completed and especially with Event class we can leverage native web API for sending streams.

Hi there!
Can you please tell me if there are plans to improve this direction?

same question, any update here? @danielroe

Looks like we could use https://github.com/ardatan/whatwg-node to support stream everywhere easily (or improve unenv/node-native-fetch)

Moving to https://github.com/unjs/nitro/issues/1327


Add option to stop machine learning datafeed that finds no data.

Implements: https://github.com/elastic/elasticsearch/pull/47922

One interesting test failure:
https://github.com/elastic/elasticsearch-net/issues/4288
Unrelated though


Removing users.extraUsers..openssh.authorizedKeys.keys does not remove /etc/ssh/authorized_keys.d/

This is because this file is stored as a regular file rather than as a symlink to /etc/static. So the etc updater script doesn't know that it needs to delete it.

(triage) what’s the status?

There is an upstream report to allow StrictModes within Match, once this is implemented we can generate the sshd_config like this:
''
  ... some sshd options ...

  ${map (user: ''
  Match User ${user.name}
    StrictModes no
    AuthorizedKeysFile ${pkgs.writeText "authorized-keys-${user.name}" ''
      ${concatStringsSep "\n" user.openssh.authorizedKeys.keys}
      ${concatMapStringsSep "\n" readFile user.openssh.authorizedKeys.keyFiles}
    ''}
  '') usersWithKeys}

  ... other sshd options ...
''

This would be way less racy than adding a "authorized keys file cleaner".
I also thought about patching OpenSSH to prevent mode checking on store paths, but this would actually lead to roughly the same as setting StrictModes to no because an attacker who is able to modify the authorized_keys file in the user's home directory can simply create a file in the Nix store and symlink to it, whereas with StrictModes it's assured that the file is only writable by the corresponding user so an attacker can't do the "symlink to the Nix store" trick to bypass that.
Selectively turning off StrictModes for only a limited set of authorized_keys allows us to still have that check on for user home directories while not checking the modes when we explicitly state the allowed keys by creating a store path along with the main sshd_config.

(triage) still an issue?

Doh! This is bad. (I just switched to this API, thinking "yay, declarative keys!")

Seems to be long fixed:
grahamc@Morbo> sudo nixos-rebuild switch
[sudo] password for grahamc:
building Nix...
building the system configuration...
these derivations will be built:
  /nix/store/librlnhh1ncb0im17b6wm2x2hwq2xws6-grahamc-authorized_keys.drv
  /nix/store/00khi83m940w76a59jbs9jhg6pak4k64-etc.drv
  /nix/store/0na2nmpssnh5szpxrxa2898dym0ywspy-nixos-system-Morbo-17.03.1700.51a83266d1.drv
building path(s) ‘/nix/store/26092zqbjkgx0cwgf08wsh1a5j1axwva-grahamc-authorized_keys’
building path(s) ‘/nix/store/dl0m1zdw6vibzksscnphi93sd57g01sq-etc’
building path(s) ‘/nix/store/zkf6wlbi0vsw5j20hz0yjpf1gc7f1xzb-nixos-system-Morbo-17.03.1700.51a83266d1’
activating the configuration...
setting up /etc...
setting up tmpfiles

and /etc/ssh/authorized_keys.d/grahamc exists... removed the option, and:
grahamc@Morbo> sudo nixos-rebuild switch
building Nix...
building the system configuration...
activating the configuration...
setting up /etc...
removing obsolete file ‘/etc/ssh/authorized_keys.d/grahamc’...
setting up tmpfiles
grahamc@Morbo> cat /etc/ssh/authorized_keys.d/grahamc
cat: /etc/ssh/authorized_keys.d/grahamc: No such file or directory

Fixed in July 2014 : https://github.com/NixOS/nixpkgs/commit/7c480ad89695c1309cc2ed5d07c166722476cd8c thanks @cleverca22

@grahamc as far as I can tell, only the directory ssh/authorized_keys.d/user is tracked in /etc/.clean, not the keys, and so old keys will still hang around when the user removes or changes them. I would say that is still a security issue.

No that isn't quite right. That is a file, not a directory, but it does seem to keep the old keys. I haven't looked at the derivation; perhaps they are added to the file but never removed.

@grahamc On further testing this is working correctly. Sorry for the false alarm.


Fix build errors in examples_rclrs_minimal_client_service

@nnmm I'll go ahead and merge this so that CI is happy on main. Thanks!


Add code of conduct to all modules

All open source projects in Equinor should have a code of conduct, as described here.
Modules:

[ ] equinor/terraform-azurerm-acr#52
[x] App Config
[x] App Insights
[ ] App Service
[x] Automation
[x] Databricks
[x] Event Grid
[x] Function App
[x] Grafana
[x] Identity
[x] Key Vault
[x] Log Analytics
[x] Network
[x] NAT
[x] Postgres
[x] Public IP
[x] Service Bus
[x] SQL
[x] Storage
[x] Synapse
[ ] VM
[x] Web App

Checklist for suggested changes

[x] App Config
[x] App Insights
[ ] App Service
[x] Automation
[x] Databricks
[x] Event Grid
[x] Function App
[x] Grafana
[x] Identity
[x] Key Vault
[x] Log Analytics
[x] Network
[x] NAT
[x] Postgres
[x] Public IP
[x] Service Bus
[x] SQL
[x] Storage
[x] Synapse
[ ] VM
[x] Web App

[ ] Verify that all sub-folders contain CODE_OF_CONDUCT.md


[Feature] Add UTM to urls for Businesses

User Story
As a business owner on RBB
I want to I want to see where traffic is coming from
So I can know how we're getting exposure
Acceptance Criteria

[ ] All external links to businesses include utm_source=Rebuild+Black+Business as query string
[ ] Any link that already includes a query string properly has the UTM code appended.

Is your feature request related to a problem? Please describe.
Add a tracking code to the end of any business URL so that the businesses themselves can see who is coming to their site from RBB
Describe the solution you'd like
Dynamically append UTM tracking code to URLs with and without existing query params

I'd be happy to work on this feature


clementineFree segfaults

Issue description
Steps to reproduce

nix-env -iA nixos.clementineFree
try to play a vorbis/opus file. (no format works for me, but mp3 and the like probably don't work because of "Free" in the package name.)
result:

...
(clementine:7138): GStreamer-CRITICAL **: gst_object_unref: assertion 'object != NULL' failed
Segmentation fault

this is pretty similar to #10326.
after that i tried installing gstreamer packages. (even though this should only be necessary for additional plugins, right?)
$ nix-env -q |grep gst
gst-plugins-bad-1.10.4
gst-plugins-base-1.10.4
gst-plugins-good-1.10.4
gst-plugins-ugly-1.10.4
gstreamer-1.10.4
gstreamermm-1.8.0
qt-gstreamer-0.10.3

still the same result.
Technical details

System: 17.03.1931.8b8977f9ff (Gorilla)
Nix version: nix-env (Nix) 1.11.14
Nixpkgs version: "17.03.1931.8b8977f9ff"
Sandboxing enabled: build-use-sandbox = false

Could you try updating to 17.09?

i added nixos 17.09 to my channels, updated and installed clementineFree.
17:08:46.627 ERROR unknown                          JSonScanner::yylex - error while reading from io device
17:08:46.627 ERROR unknown                          json_parser - syntax error found,  forcing abort, Line 1 Column 1

(clementine:11447): GStreamer-CRITICAL **: gst_object_unref: assertion 'object != NULL' failed
Segmentation fault

Does it work on your machine?

Yes, it plays music without crashing, both in unstable and 17.09…

did you install any packages like gstreamer{,-plugins}?
i have no idea how gstreamer works under the hood. maybe we/I should try to understand the error message, where it comes from and how to get more information. is there a simpler way to get debuginfo than this?

I didn't manage to make things work either in #22366 due to segfaulting but I'll try to take a look over the weekend.

I doubt clementineFree could play anything as it has no wrapper registering GStreamer plugins. The GStreamer wrapping in clementine/default.nix could pretty easily be moved as a helper function and be used directly in all-packages.nix to wrap both the free and the spotify enhanced versions.

As mentioned by @peterhoeg, the gst-libav plugin should most likely be the one you would need (after a shallow reading of ffmpeg doc).

did nix-env -iA nixos.gst_all_1.gst-libav but still the same. or do i need to change clementinefree's nix-expression?

Installing the plugin globally won't help, it has to be passed as an argument to the nix expression same as is done for clementine. However, clementineFree is the original (i.e: unwrapped) derivation. There should be a little refactor to the expression in order to allow the wrapping.

I believe this issue is superseded by #39960.

The superseding issue has been fixed so closing this.


Can't edit a product if it doesn't have a thumbnail

I have a client that has started using Vivid Store, but dropped in a bunch of products without thumbnails - now we get a Null error when we attempt to go back and either edit or delete those products.
An unexpected error occurred.
Call to a member function getThumbnailURL() on a non-object
Any thoughts on how to override this error and delete the products?

Not sure if you have sorted this out but think this project is dead. It appears the same guys have created a separate repo. https://github.com/concrete5-community-store/community_store


Scalebar - Nest public types

Nest ScalebarSettings, ScalebarStyle, ScalebarUnits as suggested here

FYI: This could be done at any time; no need to wait for the next major release. All we would need to do is add deprecated type aliases to the new types for backwards compatibility.


content-type difference

We are currently printing "content_type" instead of "content-type".

fixed


RYA-178-Remove Rat Exclusions for OWL Files

Description

What Changed?
Removed Rat Exclusions for OWL files.

Tests
No new tests added.  Build passes rat check.
Links
Jira
Checklist

[] Code Review
[X] Squash Commits

People To Reivew
Aaron Mihalik

delete sail/src/test/resources/univ-bench.owl completely.  It appears that we don't use it in any tests.


replace all instances of deprecated angular graph plugin with timeseries plugin

What kind of change does this PR introduce?
Newer versions of Grafana (from 9) have deprecated the use of the plugins that use Angular (deprecation notice here), and it has been fully removed as of Grafana 11. This PR updates the included dashboard.json spec to convert legacy graph plugins to use the newer builtin timeseries plugin, while maintaining the existing style/formatting
What is the current behavior?
Use of the included dashboard on versions of Grafana 9+ will show warnings on each of the graph plugins, and starting with Grafana 11, will stop working
What is the new behavior?
All of the affected plugins have been converted to the builtin timeseries plugin
Additional context
I've tested this on one of my existing Grafana 10 installs, and the dashboard looks as it should, but removes the alerts/warnings for deprecated plugin use! Please try out installing this via the json spec - I've been testing it by fully removing and re-adding by this json spec alone.
This was decently time consuming to do, so I wanted to be sure to raise this in case it saves other people some tedious work!

Thanks for opening this. I think we're going to need to overhaul this dashboard a little.
For context, the dashboard spec in this repo was based off the specs we use internally, though unfortunately whatever modifications were made for this repo seem to have been made by hand rather than using a script.
I think the path forward for this repo is likely for the modifications to be captured in some sort of automated script, so that we can keep this repo continually updated with both upstream and our own changes.
It sounds like for now you're not blocked on these changes being merged - lmk if that's not the case.

Apologies! I did not realize that this was being formed/pulled from elsewhere. For clarification - does this repo already diverge from the upstream that you've linked to (before my changes)? Or should I look at raising a PR to the above to make the changes there first (if they're even needed)?
Definitely agree that the right path forward is probably to get some flow going to generate this from the upstream(s).
If it's already diverged from the upstream (before my change) and we're okay merging this as is (after a quick sanity test), I think that may be beneficial for supabase users - since this repo is linked to from the supabase docs


docs: add youtube link

What: add youtube link for a devtip on how to contribute to examples

Why: So people know how to contribute to examples

How: added a link to the examples in the README

Checklist:

[x] Documentation
[ ] Tests N/A
[x] Ready to be merged

[ ] Added myself to contributors table N/A

:tada: This PR is included in version 2.0.17 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[Containerapp] Fix #29711: az containerapp logs show: Fix JSON escaping by default or with --format json

Related command

az containerapp logs show
Description

for " in logs,  it should be \". Currently it is not escaped correctly.
For example, this is not a valid json:
{"TimeStamp": "2024-08-22T08:37:19.1646828Z", "Log": "INFO:root:UTC time: 2024-08-22 08:37:18.326665+00:00, IST time 2024-08-22 14:07:18.326665+05:30, count: 4817, DEBUG   [16:46:37] -  urllib3.connectionpool (connectionpool _make_request 546) - https://kv-baz.azure.net:443 "GET /secrets/foobar/?api-version=7.5 HTTP/11" 401 97"}
After fix:
{"TimeStamp": "2024-08-22T08:37:19.1646828Z", "Log": "INFO:root:UTC time: 2024-08-22 08:37:18.326665+00:00, IST time 2024-08-22 14:07:18.326665+05:30, count: 4817, DEBUG   [16:46:37] -  urllib3.connectionpool (connectionpool _make_request 546) - https://kv-baz.azure.net:443 \"GET /secrets/foobar/?api-version=7.5 HTTP/11\" 401 97"}
If --format text, the log is:
INFO:root:UTC time: 2024-08-22 08:46:58.845724+00:00, IST time 2024-08-22 14:16:58.845724+05:30, count: 4875, DEBUG   [16:46:37] -  urllib3.connectionpool (connectionpool _make_request 546) - https://kv-baz.azure.net:443 "GET /secrets/foobar/?api-version=7.5 HTTP/11" 401 97
Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

Containerapp


[combo cases/deaths] restrict issues fetched

Description
Type of change (bug fix, new feature, etc), brief description, and motivation for these changes.
We're currently generating random 502 Bad Gateway errors on combo cases runs. One hypothesis is that at this point, combo cases pulls so many rows (~1M or more) that some of the replicas are getting overtaxed and the load balancer gives up on them.
This PR will generate the same number of queries, but the vast majority of them should return zero results. It also adds an optional config param if you for some reason want to manually specify the range of issues, or switch back to fetching the most recent issue for each date pulled no matter how old it is.
The default behavior will only fetch issues from the last week or so.
Changelog
Itemize code/test/documentation changes and files added/removed.

generalize date range calculations (new|all|yyyymmdd-yyyymmdd) in their own function
specify issues in calls to covidcast.signal
drop now-superfluous "Fetching jhu-csse|usa-facts..." printcruft

Fixes

Fixes #903

Do any params files need to be updated with this?

No, the default behavior is the desired production behavior, and it won't hurt dev usage either:
https://github.com/cmu-delphi/covidcast-indicators/blob/a8df19b74d8a9f4f75f66283f3d7150f797af12f/combo_cases_and_deaths/delphi_combo_cases_and_deaths/run.py#L195


[CodeComplete] Don't emit 'override' in protocol extension

Don't emit any inherited decls in protocol declaration.
Don't emit override in protocol extension.

Previously:
protocol BaseP {
  init(base: Int)
  func baseFunc()
  var baseVal: Int { get }
}

protocol TestP : BaseP {
   #^PROTO^#
}
extension TestP {
  #^PROTO_EXT^#
}

For both #^PROTO^# and #^PROTO_EXT^#:
Begin completions, 3 items
Decl[Constructor]/Super:            override init(base: Int) {|}; name=init(base: Int)
Decl[InstanceMethod]/Super:         override func baseFunc() {|}; name=baseFunc()
Decl[InstanceVar]/Super:            override var baseVal: Int; name=baseVal: Int
End completions

We don't want any for #^PROTO^#.
override is invalid for #^PROTO_EXT^#.
CC/ @benlangmuir

@swift-ci Please smoke test

LGTM


'make test' picks up the wrong library files

If I install OpenSSL_1_1_0 to the default location, and then build OpenSSL_1_1_0b the "make test" fails because it picks up the .so files from the first install, rather than the incipient library files.
I do a purely default build, i.e. (./config && make && make test) > /dev/null
This problem occurs on both CentOS7 and Ubuntu 16.04.
The problem begins with commit 342a1a23793cb9992.  That commit causes the stanza starting with if [ -f "$LIBCRYPTOSO" -a -z "$preload_var" ]; then to disappear from the util/shlib_wrap.sh file, which means LD_PRELOAD does not get set.

That's...  interesting.  $LD_LIBRARY_PATH should have the local build directory as its first element (to prove it: ./util/shlib_wrap.sh sh -c 'echo $LD_LIBRARY_PATH'), and the locally built library should be found on it.

Sorry, I forgot that Makefile.shared implements -rpath everywhere it can...  that's the culprit in this.

Correct, LD_LIBRARY_PATH is "./util/..", but it is over-ridden by the rpath.
I guess the problem is that "util/shlib_wrap.sh.in" is not correctly detecting that rpath is in use?  Unfortunately, I don't think I know enough to help fix that.

I guess the problem is that "util/shlib_wrap.sh.in" is not correctly detecting that rpath is in use?

Yes, that's one way of looking at it.  The other is that the use of rpath is problematic to begin with (I see many talking about DT_RPATH as a deprecated feature, DT_RUNPATH should be used instead on ELF systems).  For the moment, the debate is become a question if we should restore shlib_wrap.sh to always have the preloading code (which comes with its own problems) or if we should stop using -rpath altogether.

My vote (not that it counts for much) is to stop using -rpath altogether.  It is just asking for headaches, and DT_RUNPATH is much better.

@levitte can this be closed?

I think so


fix(k8s-views-namespaces): filter metrics to prevent reporting double cpu/memory

Pull Request
Required Fields
:mag_right: What kind of change is it?

fix

:dart: What has been changed and why do we need it?
Most queries already use label matcher. The metric reports usage for each individual image, and the whole pod which will result in incorrect reporting if not filtered correctly.
Optional Fields
:heavy_check_mark: Which issue(s) this PR fixes?
Fixes: #60
:speech_balloon: Additional information?
I'm using = rather than != as it should be more efficient to fetch only the needed metrics rather than individual metrics for each image. I don't think Grafana does any deduplication, so I don't imagine the same query in multiple places will be beneficial. I could be wrong.

Before

After

Hi @uhthomas,
Thanks for the fix, I noticed the issue but didn't had time to look into it.
I understand and agree on your point of using = rather than !=, but I don't know if the image="" series get created on all setups. I feel like their could be cases where the image="" series doesn't exist or get dropped, but I could be wrong...
Do you know anything about that?
Currently, all PromQL queries like that are on this format, so I would rather keep them like that for consistency, unless we are confident it will not break for some users, in which case, we could change them all.
Let me know.

@dotdc I don't really have a preference. I think there are advantages to both. The label selector image="" should be more efficient as it should be working with fewer overall metrics. Though keeping it the same as all the other queries could actually be better due to caching.
With respect to your question about whether it's safe to use, I believe it is. A cursory search across GitHub doesn't seem to show any instances of this metric being dropped at all.
https://github.com/search?q=container_cpu_usage_seconds_total+image+action%3A+drop+language%3AYAML&type=code

I'll merge this as is because I like your approach better. Will uniform later if there's no side effects.
Thanks @uhthomas !

@uhthomas
Just switched back to != because it can lead to issues on some setups.
See: https://github.com/dotdc/grafana-dashboards-kubernetes/issues/62

:tada: This PR is included in version 1.1.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


fix(credo.service): use config service

This PR:

Used config service. This gives more flexible on where the config values are loaded from https://docs.nestjs.com/techniques/configuration.
Renames vars to CREDO as they are for Credo abstractions/classes, not directly for Askar

@jrhender For the ConfigService to work in CredoService, we need to update the imports of theCredoModule
https://github.com/impactility/vc-api/blob/credo-integration/apps/vc-api/src/credo/credo.module.ts
import { Module, Global } from '@nestjs/common';
import { CredoService } from './credo.service';
import { ConfigModule } from '@nestjs/config';

@Global()
@Module({
  imports: [ConfigModule],
  providers: [CredoService],
  exports: [CredoService]
})
export class CredoModule {}

@ShikharBhatt thanks you're right about the ConfigModule import as the tests fail without it. I thought it wouldn't be needed as we have isGobal: true in the AppModule (https://docs.nestjs.com/techniques/configuration#use-module-globally). Perhaps something is missing from the test config.
I've fixed it now.


[54801] iOS: Fixed page number announcements

Did you check that it is OK in Settings as well? @jonasofrich

Did you check that it is OK in Settings as well? @jonasofrich

@pavshr I did not, but it's fixed now!


feat(ci): add trufflehog secrets detection

What does this PR do?
Adding a GH action to scan for leaked secrets on each commit.
Context
trufflehog will scan the commit that triggered the CI for any token leak. trufflehog works with a large number of what they call "detectors", each of which will read the text from the commit to see if there is match for a token. For example, the hugging face detector will check for hf tokens and then query our /api/whoami{-v2} endpoint to check if the token is valid. If it detects a valid token, the CI will fail, informing you that you need to rotate the token given it leaked.
References

https://github.com/trufflesecurity/trufflehog
https://github.com/marketplace/actions/trufflehog-oss

Thanks!!


Variables Endpoint

https://www.figma.com/developers/api#variables
The new "Variables" feature born in Figma, can we add it to this really usefull package ?

I have implementes the Variables Endpoint and will be happy to provide a pull request but it looks like @didoo is no longer active?

Do we have some news ? 😁

hey.... actually would also want that endpoint! :)
Thank you for you efforts!

I might contribute to this with a pull request. will keep you in loop

ok, one thing I found out, seems that Figma restricts local variable requests only for enterprise level plans. Which leads me to conclude this will not be possible and probably the reason why contributors of this repo never bothered perhaps

@LouiFi @chris2cant @p-drolima if you are still interested (and you're still using the library) I just released the 2.0.0-beta version of the library which aligns as much as possible with the existing Figma REST API endpoints (https://www.figma.com/developers/api#intro) and uses https://github.com/figma/rest-api-spec under the hood (so the types signatures should be the official ones.

Nice!
Thank you so much I am still using your work 🙏


Target Analysis Module

This issue is for more detailed information on the Target Analysis module as well as for discussion of its implementation and assignment of duties.
Description
Module for geolocating targets using their pixel locations and photo metadata, determine target type and calculate possible error. As targets are processed unique targets will be identified and the data combined into a single object.
Implementation Ideas
Some work on the geolocation had been done for the last competition. The code doesn't seem to be on github (correct me if I'm wrong), though I do have a copy if anyone wants to look at it.

Interesting Article (and math) for our purposes:
http://vision.soic.indiana.edu/projects/attributediscovery/


Win32 - Fix window size and position for border only window when maximized through OS means

What does the pull request do?
Adjusts a border-less window's position and size after being maximized to fit the window space allowed by the desktop, i.e. not cover the taskbar. This was previously done only for window state changes triggered by avalonia apis. This pr applies the update to maximization triggered by the OS, like using the Win+Up key combination.
What is the current behavior?

What is the updated/expected behavior with this PR?

How was the solution implemented (if it's not obvious)?

Checklist

[ ] Added unit tests (if possible)?
[ ] Added XML documentation to any related classes?
[ ] Consider submitting a PR to https://github.com/AvaloniaUI/avalonia-docs with user documentation

Breaking changes

Obsoletions / Deprecations

Fixed issues
Fixes #11685

Does it fix https://github.com/AvaloniaUI/Avalonia/issues/16307

Does it fix #16307
The issue doesn't seem to occur as of the latest master.


updater: run as cronjob

Basic version: Run eg every Friday 23:59 for all students (if it takes less than 2 days) in backend container (docker exec). Log progress.
Possible improvements:

run in own container (that uses backend image) with docker run
run n hours/students every night, continue next night from where left

Works now, but code may need more error handling (for example api timeouts)


IPC security permit silently fails for symlinks

I hit this when I made /usr/bin/swaybar into a symlink into my build directory and things got very weird.
Is there a security concern behind this or is it an oversight? @SirCmpwn I can send a PR if describe desired behavior, I think it should either work or log an error (maybe even abort).

This is the intended behavior. Making /usr/bin/swaybar a symlink into your build directory is a very silly thing to do.

/usr/bin on my system has it's fare share of symlinks, there's nothing silly about that. The intended behavior is to treat symlinks as if they were missing files and give the user absolutely no indication of the fact except mysterious errors and bizarre UI effects? :man_shrugging:

symlinks are fine, but symlinks into your development directory, which is presumably under /home and readable only by you, is weird and not something you should do.
We read /proc/[pid]/exe to find the location of the executable asking for special permissions, and match that with the rules in your config. The kernel follows symlinks before loading executables into memory and populating /proc/[pid]/exe. Nothing we can do about that.

symlinks into your development directory, which is presumably under /home and readable only by you, is weird

There are no other users on my home machine, what's the difference for dev purposes? But nevermind.

Nothing we can do about that.

not even just checking if the permit target is a symlink and resolving them them to the target bin?

not even just checking if the permit target is a symlink when parsing the file and resolving them them to the target bin?

We could do that but I don't really care tbh. Send a PR if you want this. However, this brings up a good point: we should check that the file being given permissions is owned by root.


fix(file-storage): improve FileStorageDirBaseArgs serializer type

The generic serializer is bugging Typescript.
Let's assign a specific type for each storage and any for the FileStorageService.

fixed directly on main xD

fixed directly on main xD!


Using WalletConnect Provider

First off Big Thank you for this project.
For metamask the examples guided me well in setting up my tests.
Im having some trouble understand how to use it to test connections for WalletConnect connections.
describe('WalletConnectConnector', () => {
  const testingUtils = generateTestingUtils({
    providerType: 'WalletConnect',
  });
  beforeAll(() => {
    testingUtils.getProvider(); // should I be setting something equal to this?

    testingUtils.mockNotConnectedWallet();
    testingUtils.mockAccounts([ACCOUNT]);
  });
    // tests here
]);

Hey @aaronmgdr ! Thanks a lot for the issue and the kind words :)
So here is an example with WalletConnect, please tell me if it helps you :).
It's not super elegant unfortunately, it's using directly the WalletConnectProvider from @walletconnect/web3-provider and not any wrapper library such as web3-react or wagmi 😅
If you're using some wrapper library and can't properly mock, tell me, I need to do examples with these libraries at some point anyway so I will be happy to dig in :)

Im using it to write tests for https://github.com/celo-org/use-contractkit Worked well for metamask but for WalletConnect we are using our own implementation so there is no @walletconnect/web3-provider instead there is a Wallet and a Signer.
Was hoping against hope there would still be away to use together but looks unlikely.

From what I see, the import WalletConnect from '@walletconnect/client-v1' is used under the hood and I did not find the web3 provider part of it, i.e. the conventional object used in order to interact via Json RPC to the remote node. Since this is the part that needs to be replaced/mocked, I am not sure that the current state of this library can help you on that unfortunately :(


chore(ws): Add cypress testing to frontend build GHA

Simply adding the test command to our github actions

/lgtm

@Griffin-Sullivan would you mind to rename the PR for chore(ws):{title}

/approve

@Griffin-Sullivan I'm talking with @thesuperzapper and we wondered if we can run the tests before building it? (due to action order)

@ederign from what I understand the tests are running before the build step?

/lgtm

/approve


groups: search for group host timeout is a problem

Go to Find Groups on a fresh ship
Search ~nibset-napwyn (if not on a fresh ship, any host you don't already know)
Observe it spin and fail (with better failure text now thanks)
Re-search it a second time after the timeout and observe the group it hosts appear

@jamesacklin and @arthyn this one is pretty bad for onboarding, this action is among the first things a new user does and it looks like they can't join any groups. Is it possible to bump this up the stack?
Tagging @emceetee for context (since she's the one that's been hitting it in onboarding)

I'm not sure what we're missing here. @Fang- @midsum-salrux @philipcmonk if y'all have any insight, here's what I know:
We first check if this ship is known aka in our ames peers:
https://github.com/tloncorp/landscape-apps/blob/9b7f24ea22af567d6b3c945cecc79ae35776da74/desk/app/groups.hoon#L85
Then if they aren't, we hi them and then send the subscription:
https://github.com/tloncorp/landscape-apps/blob/9b7f24ea22af567d6b3c945cecc79ae35776da74/desk/app/groups.hoon#L1553
Otherwise we just send the subscription like normal. Perhaps there's something wrong with the order of the hi and sub above or it's malformed?

fwiw I just tried this on two fakezods and it worked perfectly

Are fakezods on the live network?

Checking this out with @Fang- and @arthyn, and it's a timeout issue on the frontend. The search/route works urbit side but the front-end times out before it completes. Once the route is established then things are fast enough on the second search to return before the frontend times out.
Options:

We have a longer timeout, some sort of back off to a 2min max?
Use http API to interact with urbit agents on remote ships (this may also have performance gains)
We could show multiple searches as they're waiting in the UI.

We did talk about simply extending the timeout, might be effective enough in the short-term that we can work on the more complex solutions under less pressure.

That makes sense to me


Chrome

Can this block Chrome ads?
I think because of manifestv3 Chrome adblockers more limited?

System-level ad blocking can block ads up to a certain extent, but some ads have become increasingly complex and require browser-level blocking for effective filtering. I recommend using Brave Browser, which includes built-in ad blocking functionality and is not affected by Manifest V3 limitations.


GEOMESA-2169 Create a FSDS Tutorial

Depends on #1858 and geomesa-tutorials #59

@aheyne you can leave out my commits I think, since this is a separate file it shouldn't cause any conflicts.

Force pushed rebase on master


Better EIG testing, create pyro.contrib.glmm

Just pushed tests for glmm. @eb8680 think I've addressed all your comments from last PR and for this one :)

oh wait, forgot to flake8

@jpchen I'll make your changes on another branch in due course. Does look like contextlib2 works ok on py3, at least on my machine and Travis


Optimize Comics when reading

Comics take a long time to load when they are not being read locally. This is because they are being served full-size for their detail. These images should be optimized for a certain width and/or height so that they still look great but also load much quicker. This will take strain off the browser for having to load large images.

Lazy loading and image optimization have been implemented in commit 59f7de6


Map terrain is removed when i move

I click map terrain on and if i move or do something map terrain is disabled

Hi,
I've got the same iusse.
It seems that map is showed as RoadMap as default
If map type is changed with google control map type, new map type is showed but any change on map (zoom, pan, click on marker) bring back to RoadMap type.

I'm planning of including a fix for this to the next update.

The issue has now been fixed in the latest snapshot.


[retrofit_generator] Fix error with code_builder

How about to add lints to this both projects?
#507

Should I add the lines package or better in the next update?

Yes.   Please add lints in a separate pull request.

Thanks for your contribution.


csharp_linux_opt_native.csharp.Grpc.Core.Tests.ShutdownHookServerTest fails on Master

https://grpc-testing.appspot.com/job/gRPC_master_linux/1947/testReport/junit/(root)/csharp_linux_opt_native/csharp_Grpc_Core_Tests_ShutdownHookServerTest/
NUnitLite 3.6.0 (.NET 4.5)
Copyright (C) 2017 Charlie Poole

Runtime Environment
   OS Version: Unix <IP_ADDRESS>
  CLR Version: 4.0.30319.42000

Test Files
    /var/local/git/grpc/src/csharp/Grpc.Core.Tests/bin/Release/Grpc.Core.Tests.exe

Test Filters
    Test: Grpc.Core.Tests.ShutdownHookServerTest

D0329 12:00:50.535012 Grpc.Core.Internal.UnmanagedLibrary Attempting to load native library "/var/local/git/grpc/src/csharp/Grpc.Core.Tests/bin/Release/libgrpc_csharp_ext.x64.so"
D0329 12:00:50.565246 Grpc.Core.Internal.NativeExtension gRPC native library loaded successfully.
=> Grpc.Core.Tests.ShutdownHookServerTest.ProcessExitHookCanCleanupAbandonedServers

Run Settings
    Number of Test Workers: 1
    Work Directory: /var/local/git/grpc
    Internal Trace: Off

Test Run Summary
  Overall result: Passed
  Test Count: 1, Passed: 1, Failed: 0, Warnings: 0, Inconclusive: 0, Skipped: 0
  Start time: 2017-03-29 12:00:50Z
    End time: 2017-03-29 12:00:50Z
    Duration: 0.211 seconds

Not seen in quite a while, closing.


Ignores volume_tags to preserve idempotency

To fix https://github.com/terraform-aws-modules/terraform-aws-ec2-instance/issues/60. To avoid the race condition: aws_ebs_volume tags (defined outside the module) are overrided by volume_tags of the module.
Unfortunalty lifecycle ignore_changes does not accept variables, so it cannot be specified by end user.

There were two solutions - manage volume_tags in both places (this module and as part of aws_ebs_volume resource which is managed outside of this module) or add them to ignore_changes.
I decided to make them manageable in both places for consistency.
Closing this pull-request.

v1.23.0 has been released with support for volume_tags.
Terraform 0.11 users can use it. Similar functionality for Terraform 0.12 will be released soon.

YES. The volume_tags inside this module will override other volume tags in other places like external aws_ebs_volume somewhere. (Maybe) Because terraform assumes this external volume is a part of instance like others (root) and use volume_tags to apply for all volumes (???)
To prevent this kind of behavior, you must force ignore_changes in the place that you defined external EBS volume
To be clear, here is the example
module "ec2_test" {
  source                      = "terraform-aws-modules/ec2-instance/aws"
  version                     = "~> 2.0"
  name                        = local.name

  root_block_device = [{
    volume_type           = "gp2"
    volume_size           = "32"
    delete_on_termination = true
  }]

  volume_tags = {
    Name        = join("-", [ local.name , "root" ])
  }
}

resource "aws_ebs_volume" "external" {
  type              = "gp2"
  size              = "128"

  tags              = {
    Name        = join("-", [ local.name , "external" ])
  }

  lifecycle {
    ignore_changes = [
      tags["Name"],
    ]
  }
}

resource "aws_volume_attachment" "external" {
  device_name = "/dev/sdf"
  volume_id   = "${aws_ebs_volume.external.id}"
  instance_id = "${module.ec2_test.id[0]}"
}

If you do not prevent/ignore changes at tags["Name"] in external volume like above, then in the next apply, the -external volume name will be forced change to -root.


Implement Twirp protocol v7

Changes required to implement the new protocol:

Error code resource_exhausted should map to 429 (instead of 403).
Allow any arbitrary URL prefixes instead of forcing the "/twirp".

See Protocol v7 differences and the Go implementation v7.0.0 release notes for details.

Thanks, @marioizquierdo. This has been on my list for a bit. I'm going to try to take a look soon

btw, I really like the twirp-elixir implementation. I'm surprised how well it maps all the Twirp concepts to the Elixir style 💯


Scroll bar issue with multi-line Code Snippet

If a computer has a mouse attached, or has scroll bars set to always on, the multi line text snippet renders as follows when expanded:

This is despite not having any overflow-x content. When the content overflows, it renders as:

Which seems to obscure part of the ending line.

Let's merge this with #2060 for now. Can re-open if team finds tracking them separately makes more sense.


Minor refactoring

Questions
Answers

Description?
Some minor cleanup and renaming - clarified variables in the converter class and changed availability values to constants, so it's more understandable.

Type?
refacto

BC breaks?
no

Deprecations?
no

Fixed ticket?

How to test?
Tests green. Can be merged without QA if @Robin-Fischer-PS approves. :-)

This change is

Hello there,
I took a look at the code, it can indeed be merged without manual QA test :)
Thanks for the refacto @Hlavtox !

Perfectooo


title_generation_mode from auto to none

@abhi-vachani the change looks good. You will need to update the failing tests that depend on the title generation mode being set by default, but other than that looks good.
also looks like docs up to date cannot auto commit for external contributions. You can run the doc script locally to make that test pass.


Login only form

How to modify such that there is only Login, but no Registration form because it is an internal app I am working on and the logic is simply when username and password (hashed) match initialized username and password that is created once upon app launch. Thanks

The form would be basically the same just with fewer fields:
var loginFormSchema = new SimpleSchema({
    username: {
        type: String,
        max: 60,
        label: "Username"
    },
    password: {
        type: String,
        max: 60,
        min: 8,
        label: "Password"
    }
});

RegistrationForm = React.createClass({
    _onSubmit(doc) {
       Meteor.loginWithPassword(doc.username, doc.password, (error, result) => {
            // Handle error/success
        })
    },
    render() {
        return (
            <Form schema={registrationFormSchema} id="login-form" onSubmit={this._onSubmit}>
                <TextInput name="username" />
                <TextInput name="password" type="password" />
                <SubmitButton label="Login" />
            </Form>
        )
    }
});

Near the bottom, do you mean
Thanks


raftstore/hibernate: check quorum for singleton

What have you changed?
Singleton can become leader in a tick, which breaks the hibernate check.
This patch verifies if it's still follower to prevent it from hibernating.
Close #6668
What is the type of the changes?

Bugfix

How is the PR tested?

Integration test

Does this PR affect documentation (docs) or should it be mentioned in the release notes?
No.
Does this PR affect tidb-ansible?
No.
Refer to a related PR or issue link (optional)
#6668

@5kbpers @gengliqi PTAL

@5kbpers @gengliqi PTAL


Relies on Intune Powershell which is now EOL

Some tools fail due to reliance on Intune Powershell which is now EOL.

Going to comment here because of no answer. Will the tools be updated so it's not using Intune Powershell? I would like to use device details debugging but it fails at authentication.


UCCSD H2 is failed while calculating an expecation value in Aer

Information

Qiskit Aqua version: b54a4b6b42199ec9cef23384b1c55e2e4ef9d355
Python version: 3.8.3
Operating system: Linux, Mac

What is the current behavior?
An exception is thrown while evaluating aux_ops:
Traceback (most recent call last):
  File "main.py", line xx, in <module>
    result = mgse.compute_energy(cb_create_solver)
  File "/qiskit/chemistry/applications/molecular_ground_state_energy.py", line 135, in compute_energy
    raw_result = self.solver.compute_minimum_eigenvalue(operator, aux_operators)
  File "/qiskit/aqua/algorithms/minimum_eigen_solvers/vqe.py", line 420, in compute_minimum_eigenvalue
    return self._run()
  File "/qiskit/aqua/algorithms/minimum_eigen_solvers/vqe.py", line 390, in _run
    self._eval_aux_ops()
  File "/qiskit/aqua/algorithms/minimum_eigen_solvers/vqe.py", line 404, in _eval_aux_ops
    values = np.real(sampler.convert(aux_op_expect).eval())
  File "/qiskit/aqua/operators/converters/circuit_sampler.py", line 197, in convert
    sampled_statefn_dicts = self.sample_circuits(circuit_sfns=circs,
  File "/qiskit/aqua/operators/converters/circuit_sampler.py", line 275, in sample_circuits
    results = self.quantum_instance.execute(ready_circs,
  File "/qiskit/aqua/quantum_instance.py", line 372, in execute
    result = run_qobj(qobj, self._backend, self._qjob_config,
  File "/qiskit/aqua/utils/run_circuits.py", line 318, in run_qobj
    raise AquaError('Circuit execution failed: {}'.format(msg))
qiskit.aqua.aqua_error.AquaError: 'Circuit execution failed: PARTIAL COMPLETED, ERROR: Invalid expval snapshot (Pauli components are empty).'

Steps to reproduce the problem
import logging
from qiskit import Aer
from qiskit.aqua.algorithms import VQE
from qiskit.aqua.components.optimizers import SLSQP
from qiskit.chemistry.applications import MolecularGroundStateEnergy
from qiskit.chemistry.components.initial_states import HartreeFock
from qiskit.chemistry.components.variational_forms import UCCSD
from qiskit.chemistry.drivers import PySCFDriver, UnitsType

logging.basicConfig(level=logging.INFO)

mol_string = 'H .0 .0 .0; H .0 .0 0.735'
driver = PySCFDriver(atom=mol_string, unit=UnitsType.ANGSTROM, charge=0, spin=0, basis='sto3g')
# Set the qubit number based on the value above
qubits = 2
def cb_create_solver(num_particles, num_orbitals,
                     qubit_mapping, two_qubit_reduction, z2_symmetries):
    initial_state = HartreeFock(num_orbitals, num_particles, qubit_mapping,
                                two_qubit_reduction, z2_symmetries.sq_list)
    var_form = UCCSD(num_orbitals=num_orbitals,
                     num_particles=num_particles,
                     initial_state=initial_state,
                     qubit_mapping=qubit_mapping,
                     two_qubit_reduction=two_qubit_reduction,
                     z2_symmetries=z2_symmetries)
    vqe = VQE(var_form=var_form, include_custom=True, optimizer=SLSQP(maxiter=5000))
    # Note that this uses Aer's fast expectation snapshot. To use the complete list of
    # circuits that would be necessary to run on hardware, switch to BasicAer.
    vqe.quantum_instance = Aer.get_backend('qasm_simulator')
    return vqe
mgse = MolecularGroundStateEnergy(driver)
result = mgse.compute_energy(cb_create_solver)
print(result)

What is the expected behavior?
No exception.
Suggested solutions
if all the coeff of SnapshotExpectationValue is 0, the current Aer fails simulation because

if coeff is less than 1e-10, the pauli-string is ignored (https://github.com/Qiskit/qiskit-aer/blob/0.5.2/src/framework/operations.hpp#L1059)
if no pauli-string remain, statevector raises an exception (https://github.com/Qiskit/qiskit-aer/blob/0.5.2/src/simulators/statevector/statevector_state.hpp#L563-L565)

Aer may need to accept any coeff, but Aqua should not run simulation if all the coeff is 0.

#1096 mentioned the same issue.

This error, due to partial completion of the expectation value as computed by Aer snapshot, was address by a change to Aer https://github.com/Qiskit/qiskit-aer/pull/826

As noted in the prior comment this was fixed in master. In the absence of any feedback to the contrary I am closing this. If for some reason it did/does not work for you still then feel free to re-open.


Does this still work after the canary update?

I can't tell

Unsure, I don't use powercord anymore so I can't maintain this much, but if the extra connections show up in settings it should.On Jan 11, 2022 8:16 AM, SheepCommander @.***> wrote:
I can't tell
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: @.***>

Ah I see. It does seem to show up in Plugins list but it does not have a settings page

Better connections does not have its own settings page, it just adds more options to the normal Connections setup page.On Jan 11, 2022 11:06 PM, SheepCommander @.***> wrote:
Ah I see. It does seem to show up in Plugins list but it does not have a settings page
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>

ohhh okay aight


Change webhookResponse too webhook.response

I have a case where my web hook returns an array, but our storing of time and statusCode is messing that up.
I am proposing we change our webhook structure to return something like:
  "webhook": {
    "response": ... could be any type,
    "elapsedTime": 137,
    "statusCode": 200,
    "error": shouldn't exist unless there is an error
  }

Closed by https://github.com/samtecspg/articulate/commit/a000646ec087d778553068a1b5fda3bf6ee8cb4a


Remove the finaizer from CFServiceInstance

Is there a related GitHub Issue?
https://github.com/cloudfoundry/korifi/issues/1876

What is this change about?
The finalizer has been replaced by setting owner reference from the service to the
service binding in the service binding repository

Does this PR introduce a breaking change?
No

Acceptance Steps
N/A

Tag your pair, your PM, and/or team
@kieron-dev

We have realised that with this change a service binding has two owners - the app and the service. If one of them is deleted, the binding remains behind. In order to be deleted automatically, both the app AND the service have to be deleted. This is something we don't really want

This PR is no longer needed. The issue addressed with https://github.com/cloudfoundry/korifi/pull/1882


Remove password_required!

From reading through the source more, and doing some console debugging, this doesn't work the way I thought.  Setting this value is an instance variable.  So the first time through the LTI process, the call to reload loses this value, and the validation triggered up the call stack in omniauth_callbacks_controller#115 fails.  On the second time through, this succeeds because that method isn't called on the user load path.
It's unclear what the user impact here is, since this hasn't come up in any of our manual testing, we haven't had widescale reports of any problems, but the Discourse logging shows this error has affected most users.

Closed for https://github.com/mit-teaching-systems-lab/discourse-edx-lti/pull/13


Windows

Where can I find the Windows builds?
Failing that, how do I build for Windows?

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

This issue does not belong here.


Does not support, what it says it supports.

Spent a good amount of time going through the documentation only to find that this
DOES NOT WORK The official Dojo .NET library, supporting .NET Standard 2.0+, .NET Core 2.0+, and .NET Framework 4.6.1+.
this does not support .NET Framework at all. and the documentation on this is completely wrong.
i suggest changing the documentation to stop others wasting their time or fix it

Hi @SOELexicon,
Sorry for a bit late reply - I will fix it.
Thanks,
Roman

@SOELexicon  - I have updated the SDK to also support netstandard 20 and thus it works now for .net framework 4.6.1+. Please download version 1.0.8.

Excellent, thanks, that makes the library a lot more useable! Thanks!


Added logic for Custom Issue title and Breadcrumbs to be sent to Sentry

I have made enhancements in the existing code to send proper values to Sentry and also added logic with which if we want to send our custom title for any issue we can send that as well. Also, I have added logic to send breadcrumbs as well which helps in getting some proper debugs with which we can get to know the details of the exception.

Yeah, I need some more documentation, for sure. I'm surprised anyone has
tried to use it at all... I feel pretty avant-garde in my desire to have
Salesforce log externally... :D
On Wed, Apr 28, 2021 at 10:39 AM Jheel Agrawal @.***>
wrote:

@.**** commented on this pull request.
In force-app/main/default/classes/SYS_CustomException.cls
https://github.com/jmather/SentryForSalesforce/pull/4#discussion_r622246279
:

@@ -0,0 +1,11 @@
+/**

@description       :

@author            : Jheel

@group             :

@last modified on  : 04-28-2021

@last modified by  : Jheel

Modifications Log

Ver   Date         Author   Modification

1.0   04-28-2021   Jheel   Initial Version
+**/
+public class SYS_CustomException extends Exception {}

Yes. It is not used anywhere in the code. It needs to be used by others to
send a custom exception. Even if there is no actual system exception.
For example, consider a use case in any project, you want to create an
issue in Sentry if due to some reason a record is rejected or something. So
in that scenario, we aren't running into any exception but we want to
create an issue in Sentry so for this we will use this class to throw a
custom exception.
So this class is not for our use but more of an outside use class. But if
you feel like it's not worth having then you can remove it off. But I would
suggest you, to add up some sort of notes in the readme file explaining how
to use the Sentry_Exception and Sentry_ExceptionFactory classes.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/jmather/SentryForSalesforce/pull/4#discussion_r622246279,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADODITOTJE474B6HLB3FEDTLAMYVANCNFSM43VVLFZA
.

Yeah, I need some more documentation, for sure. I'm surprised anyone has tried to use it at all... I feel pretty avant-garde in my desire to have Salesforce log externally... :D
…
On Wed, Apr 28, 2021 at 10:39 AM Jheel Agrawal @.> wrote: @.* commented on this pull request. ------------------------------ In force-app/main/default/classes/SYS_CustomException.cls <#4 (comment)> : > @@ -0,0 +1,11 @@ +/** + * @description : + * @author : Jheel + * @group : + * @last modified on : 04-28-2021 + * @last modified by : Jheel + * Modifications Log + * Ver Date Author Modification + * 1.0 04-28-2021 Jheel Initial Version +**/ +public class SYS_CustomException extends Exception {} Yes. It is not used anywhere in the code. It needs to be used by others to send a custom exception. Even if there is no actual system exception. For example, consider a use case in any project, you want to create an issue in Sentry if due to some reason a record is rejected or something. So in that scenario, we aren't running into any exception but we want to create an issue in Sentry so for this we will use this class to throw a custom exception. So this class is not for our use but more of an outside use class. But if you feel like it's not worth having then you can remove it off. But I would suggest you, to add up some sort of notes in the readme file explaining how to use the Sentry_Exception and Sentry_ExceptionFactory classes. — You are receiving this because you commented. Reply to this email directly, view it on GitHub <#4 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AADODITOTJE474B6HLB3FEDTLAMYVANCNFSM43VVLFZA .

Indeed. But as I'm the one who has started with this surely people will join us too. And we can take our this package to next level soon.

@jmather I have added one more commit for increasing test class code coverage for the new changes which I have implemented.

Merged in. Thank you!


[WFCORE-1623] BoundedQueueThreadPoolResourceDefinition does not able …

…to add additional check on the threads executor
Jira: https://issues.jboss.org/browse/WFCORE-1623

What is the check mentioned in the Jira that the jca subsystem needs to do?

So that JcaWorkManagerDefinition in JCA subsystem can instance the BoundedQueueThreadPoolResourceDefinition by specifying a customized BoundedQueueThreadPoolAdd  to check whether there are any existing long-running-threads or short-running-threads defined by the WorkManager. Only one long-running-threads or short-running-threads sub-resource can be added.

Added @Deprecated to the constructor.


Animation Api example shows dependency error in expo playground

https://reactnative.dev/docs/animations
 React.useEffect(() => {
    Animated.timing(
      fadeAnim,
      {
        toValue: 1,
        duration: 10000,
      }
    ).start();
  }, [])

The above code is missing a dependency in Array supplied to useEffect
FIX :  add fadeAnim to dependency array

Can you elaborate on this problem? In the current example fadeAnim is defined (line 5 of example) as a reference using useRef hook which is based on the Animated.Value() current value.

Was about to post this myself - currently the example shows a dependency error, eslint expects to see fadeAnim in the deps array.
    Animated.timing(fadeAnim, {
      toValue: 1,
      duration: 1000,
    }).start();
  }, [fadeAnim]);

I'm not sure if that is correct though, or if eslint is in the wrong here, should that be a dep?

Looks like this was fixed in #1879


Reimbursement of plan expenses should always be 12.50

There is no need to distinguish the different plans, we will always reimburse 12.50€ apparently. Lets verify this again before implementation.

According to the current paper form, this is how we handle it, but the reimbursement is 12,25 €

Ja, es werden immer nur 12,50€ erstattet


revert stable cadence

Are you going to open another PR to revert the accidental copy of docs/cadence to versioned_docs/*/cadence made in #306?

Are you going to open another PR to revert the accidental copy of docs/cadence to versioned_docs/*/cadence made in #306?

yes, I'll do another PR


Increase TPS to 4 digits

Cerebras and Groq are both capable of thousand(s) of tokens per second
gorq : llama 3 8b : 1200 tps
cerebras : llama 3.1 8b : 1850 tps
MAX_TPS = 9999 is a bit of hack.  It would be cleaner to know which providers support streaming and therefore can have their TPS measured.  Happy to contribute a change like that.

@juberti and @mdepinet for your consideration


fix: mark inline color styles

Fixed issue with Highlitr plugin: https://github.com/chetachiezikeuzor/Highlightr-Plugin/issues/56
Actual:

Expected:

Thank you for taking care of this!


ISPN-9655 REST Access Log headers

https://issues.jboss.org/browse/ISPN-9655

@oraNod you will want to look at my doc changes here.

Well, that would be up to the user to configure things sensibly. By default we don't.

Integrated into master, thanks @tristantarrant !

Cherry-picked to 9.4.x


Unable to download checkpoint files

Hi,
The downloading of checkpoint files from http://muradin.cs.ucdavis.edu:9876/ was not successful. I also tried to download it on chrome/firefox and also from terminal using wget.
Please let me know how I can get these checkpoints :)
Thanks,

Sorry about that, I host a python http server in my lab machine, which can be unstable. I will upload the checkpoints to google drive.
Right now, I just restart the http server process and it should work temporarily (although I don't expect it will work for a long time).

Hi @xuanqing94,
I am sorry to say that it still does not work.
I would like to compare my defense method with your interesting work. It would be great if you could make the checkpoints available.
Thanks,

@VigneshSrinivasan10 That's weird because I can open the link. Anyway please check the readme to see the google drive link, hope this will work for you.

@xuanqing94, it works now.. thanks a lot!


deployed on heroku, setup first user?

How can I setup the first admin user on heroku? The readme file only shows how to adduser on local mongodb.

Again if someone is still looking for this it's now: heroku run --app YOURAPPNAME node bin/strider addUser

Thanks guys. I added that to the wiki entry.


Feature: Integrate million.js

Type of feature
🍕 Feature
Current behavior
Continued conversation from https://github.com/open-sauced/app/pull/1608 for @ayusham001
Suggested solution
No response
Additional context
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Contributing Docs

[ ] I agree to follow this project's Contribution Docs

Hii @brandonroberts
Please review my PR at https://github.com/open-sauced/hot/pull/487


Set internal histogram dataview attributes silently

Fixes CartoDB/cartodb.js#1069.
It's not the most elegant solution to the problem, but it's the quickest solution I could think off.
@acanimal can you please take a look? Thanks!

:+1:

hey, this is the quickest but this is not the right thing to do.
When you set parameters with silent: true because a third component should not be updated what will happen is you will remove it because you will have another component using those parameters and that component will need to be updated.
So it's much better to go to the end of the chain and remove the binding to those attributes. Specially in this case where start, end and bins are attributes that don't require to update the map.
We need to be quick but not the quickest


[#3503] Add MSI support for Host and Skill in 80.skills-simple-bot-to-bot folder

Addreses #3503

Note: The pipeline Samples-CI-PR-Pipelines-Runner is failing due to not finding the 4.15.0-daily.20211006.271232.c20cc39 version in NuGet, whereas this is only available in Artifacts or MyGet.

Note: Currently, MSI and SingleTenant support needs the version 4.15.x that's under development, therefore these PR changes will use the 4.15.0-daily.20211006.271232.c20cc39 version instead. Once the 4.15.x version is released, this will be updated.

Proposed Changes
This PR adds support for MSI and SingleTenant functionalities to the Host and Skill under the 80.skills-simple-bot-to-bot folder by updating the appsettings.json file to include the MicrosoftAppType and MicrosoftAppTenantId fields, the registration of valid token issuers when the TenantId is provided and the creation of the ConversationReference when sending an Activity to the SKill.
Additionally, it removes the AllowedSkillsClaimsValidator and SkillConversationIdFactory to use the ones from the SDK.
Detailed Changes

Added AuthenticationConfiguration for the Host and Skill with valid token issuers when the TenantId is provided.
Updated the appsettings.json to include the  MicrosoftAppType and MicrosoftAppTenantId fields.
Updated Microsoft.Bot.Builder.Integration.AspNet.Core dependency version to 4.15.x.
Updated Setup file for the Host to include the CloudSkillHandler and BotFrameworkClient instead of SkillHandler and SkillHttpClient respectively.
Updated SkillController file to include the CloudSkillHandler.
Updated AdapterWithErrorHandler to use the injected BotFrameworkClient instead of creating a new one.
Updated RootBot file to include creation and tracking for the ConversationReference with the skill.
Removed AllowedSkillsClaimsValidator file in favor of the one from the SDK.
Removed SkillConversationIdFactory file in favor of the one from the SDK.

Testing
The following list are the combinations tested, where all that Passed are the supported ones.

Host/Skill
MultiTenant
SingleTenant
UserAssignedMSI

MultiTenant
Passed
Not Supported
Not Supported

SingleTenant
Not Supported
Passed
Passed

UserAssignedMSI
Not Supported
Passed
Passed

The following images show the bots working in Azure (MultiTenant, SingleTenant, UserAssignedMSI).

/azp run Samples-CI-PR-Pipelines-Runner


Fixed gRPC 1.61 offsets and updated go.mod versions

A couple of the dependencies had vulnerabilities.
Also I wanted to get the latest version of the OTEL SDK, for improved Prometheus support.
I also found and fix a bug in the way we handled the gRPC removed address fields (see comment below)

I've seen this before, depending on the kernel we build on sometimes there are these verifier errors. I can't see them anymore after I've recompiled. I'm investigating more.

OK, so as I expected, compiling on Ubuntu worked, but I reproduced the issue by compiling on Fedora. I believe I fixed the issue by using this new helper I added some time ago bpf_clamp_umax, which makes the correct value limiting assembly unrelated to the compiler version. If this passes, I'll pull one more time, recompile on Ubuntu, just to make sure all combinations pass.

Thanks @nikola! I will change the base image of the docker generator, then.


The result of robotcar season dataset

Thank you for great work. I run the robotcar pipeline with initial settings, but the result of night is quiet different from reported, while the result of day is similar(As shown in following figure). How can I reproduce your result. By the way, the result of your robotcar pipeline is about v1 or v2?

Hi @aruba01, The pipeline is for the v1 but should also work for the v2. The results reported here are based on per-location and per-camera retrieval. The pipeline in the main branch does not provide this feature (there is a TODO) but some previous code here can do this. It could be used as is or might need to be adapted - I haven't had time to look into it but a PR is welcome.

Thank you for your prompt reply, I have tried the per-localtion and per-camera pipeline successfully. Now I have a new problem in the robotcar pipeline (in the master branch), it may be a bug. I run the pipeline with the configure feature_conf = extract_features.confs['sift'] and matcher_conf = match_features.confs['NN-ratio'], it will wrong when match features between query images and database (as shown in following figure). The configure [r2d2 and NN-ratio] and [superpoint and NN-ratio] is ok.

Thank you for great work. I run the robotcar pipeline with initial settings, but the result of night is quiet different from reported, while the result of day is similar(As shown in following figure). How can I reproduce your result. By the way, the result of your robotcar pipeline is about v1 or v2? ![NL)L6` (ESLJHVGC %I7I A](https://user-images.githubusercontent.com/47864285/137629913-2e8cf2a3-6f12-4e02-a46b-68a4ea6e1407.png

@aruba01  How did get this localization accuracy results? I ran the pipeline completely on robotcar but it just says Done at the end and didn't provide these numbers.

@rishabhramteke There will be a text file named RobotCar_hloc_superpoint+superglue_netvlad20-percam-perloc.txt in the outputs file folder. The text file contains the localization result for per image. You can submission the text file to visuallocalization.net and you will get the accuracy results.

Okay. I got it. Thank you so much for your help

@aruba01 How do i get the detailed results for all the subsets like dawn, dusk?
It only shows all day or all night result

Seems to have been fixed by https://github.com/cvg/Hierarchical-Localization/pull/125.


Move implementations of MultiwordInteger/FixedPoint functions to separate headers

Coverage remained the same at 100.0% when pulling 7f9c8ccbba3367d9b66a965882eecb2fc9c3ab56 on separateheaders into 5e3e3619941803e4562e4454ef79fb27d51386e9 on master.

Coverage remained the same at 100.0% when pulling e2dedc56d1827c1fc04c31b6d87a7e07c74deec0 on separateheaders into 5e3e3619941803e4562e4454ef79fb27d51386e9 on master.

Coverage remained the same at 100.0% when pulling ed8f73ffcf8069dbfc6fcdcb554e31894153aea2 on separateheaders into 5e3e3619941803e4562e4454ef79fb27d51386e9 on master.

Coverage remained the same at 100.0% when pulling a081de989c6a1c996a051532dd49d78549f596c5 on separateheaders into 5e3e3619941803e4562e4454ef79fb27d51386e9 on master.

Coverage remained the same at 100.0% when pulling 6d082a3f02d557dfe58377051071cf1e96b3e9e2 on separateheaders into 5e3e3619941803e4562e4454ef79fb27d51386e9 on master.

... I'll just accept this despite clang whining about it. Works on my local box. =P