(Bug) The user is able to make a transaction without selecting a category

Description
Added category validation. User can't proceed to the next step without selecting a transaction category.
About #3181
Checklist:

[x] PR title matches follow: (Feature|Bug|Chore) Task Name
[x] My code follows the style guidelines of this project
[x] I have followed all the instructions described in the initial task (check Definitions of Done)
[x] I have performed a self-review of my own code
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[x] I have added reference to a related issue in the repository
[x] I have added a detailed description of the changes proposed in the pull request. I am as descriptive as possible, assisting reviewers as much as possible.
[ ] I have added screenshots related to my pull request (for frontend tasks)
[ ] I have pasted a gif showing the feature.
[ ] @mentions of the person or team responsible for reviewing proposed changes

@julianpolcode i've adjusted PR please re-test how it works. thanks!


Visa cards issue

When entering visa cards, input takes more than 16 digits. Mastercard works fine.

Just to let u know @cozzbie https://blog.vindicia.com/19-digit-visas-and-2-digit-mastercards/ visa is now accepting 19 digits #24

#24

@juliocanares :(
this coding life of ours...we are gonna make it shine...sobs...make it shine...make it shine...make it shiiiinnnnnnnneeeee.
Thanks mate

@jessepollak
This is a major issue, as the space that is automatically added to 16 digit VISA cards being formatted intercepts the onChange event, so 16 digit VISA cards never get sent to onChange.

It works using Payment.fns.formatCardNumber so it's definitely the Payment.formatCardNumber function malfunctioning

Payment.fns.formatCardNumber doesnt do much formatting though. Not even sure thats part of the api.

I am seeing this issue as well. Really buggy as visas are really common

The 16th character is skipped and replaced by a space and then put back on the entry of the 17th character (18th during formatting). It might be best to use another library and combine some algo to help. Thats what I did.

@cozzbie have a look at the pull request just submitted 👍

Awesome @gmoreira lets wait for the it to merged then we can update. Currently combining two libraries to get this to work and its working fine...for a hack. 👍

This just got merged and will be shipped in 2.2.5!

2.2.0*

AWESOME!!!!


Ecmwf api client v1.5.6

Checklist

[x] Used a fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Closes #5.
Please note that:

changes provided by PR #4 "Use pip install instead of source" have been reverted: they seem not to work properly (I don't now why)
I have added my username to the list of maintainers because I would like to help to maintain this conda package. Please feel free to remove it if you want.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@StephanSiemen, @Ohjeah any update on this?
It would be nice to have conda package for ecmwf-api-client updated.
Please let be now if you thin that the PR should be improved.
I have just updated the ecmwf-api-client target version and refreshed the recipe using the conda-smithy tool.

@avalentino,
Thanks for your PR. I looked at your changes and they look fine to me. Unfortunately I am still not allowed to merge PRs for the repo :-(
@Ohjeah, are you able to merge the PR?

thanks @Ohjeah and @StephanSiemen :)


Added mwc-random to the benchmark.

mwc-random appears to be very mature and popular, so adding it here so we can see how we stack up.

Closing stale PR


Fix solc-to-k for contracts with zero variables

Fixes https://github.com/runtimeverification/erc20-verification/issues/305

You may need to add this new tests to tests/failing-symbolic.java, btw. Not sure if you tested it locally.


how to format float with 2 decimal places?

Hi all,
I was wondering if biwascheme had some format functionality that would allow me to keep a variable as a float, yet print it with only a few decimal places without having to constantly apply (round) to it?
Example:
(print (format "~0,2F" 0.2222)) would ideally print "0.22"
I couldn't find a way to do this

You can use toFixed via js-invoke.
biwascheme> (js-invoke 0.2222 "toFixed" 2)
"0.22"


Plugin won't start if the server isn't accessible

If the LMS isn't accessible, the plugin won't start which makes the whole installation of the homebridge and all other plugins inaccessible:
[11/7/2020, 21:25:38] [Squeezebox] Error: connect ECONNREFUSED <IP_ADDRESS>:9002
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1141:16) {
  errno: 'ECONNREFUSED',
  code: 'ECONNREFUSED',
  syscall: 'connect',
  address: '<IP_ADDRESS>',
  port: 9002,
  ok: false
}

Ah, mistaken it with the real error which is #5


ISPN-14002 Configuration for multimap

https://issues.redhat.com/browse/ISPN-14002
Adding a configuration for the multimap, only embedded for now. After we implement multimap for the new API, we can introduce the remote configuration.
This is also renamed MultiMap => Multimap, I can add this as a separate JIRA + commit.

Updated with all suggestions.


sprintfix: 非权限中心版本下云区域无展示问题修复

Codecov Report

Merging #1066 (07272e1) into V2.2.22-rc (37467de) will increase coverage by 0.01%.
The diff coverage is n/a.

@@              Coverage Diff               @@
##           V2.2.22-rc    #1066      +/-   ##
==============================================
+ Coverage       73.20%   73.21%   +0.01%
==============================================
  Files             322      322
  Lines           22976    22976
==============================================
+ Hits            16820    16823       +3
+ Misses           6156     6153       -3

Impacted Files
Coverage Δ

apps/backend/subscription/steps/plugin.py
55.86% <0.00%> (+0.65%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Has anyone been able to get React-Navigation to work with hot reloading?

Hi all,
Like a good react-native citizen, i upgraded my app to use react-navigation and am enjoying it.
However, it seems to have broken hot reloading. Now, whenever I make a change, it resets the navigation state. Real time sink there. Can anyone post work-around code, or explain to me what I'm doing wrong? Thanks1

Sorry to hear about your trouble. I believe I saw someone file an issue about this elsewhere in the repo. I'll need to close this specific issue here because there isn't sufficient information to act on it. If you want this to remain open, could you update your post to make sure it meets the issue guidelines?


Roll Flutter Engine from de07179371f8 to 4af4cbd6ea31 (4 revisions)

https://github.com/flutter/engine/compare/de07179371f8...4af4cbd6ea31
2024-05-30<EMAIL_ADDRESS>Roll Skia from 693d9362f0f6 to eadc654480ed (3 revisions) (flutter/engine#53117)
2024-05-30<EMAIL_ADDRESS>[Flutter GPU] Upload flutter_gpu.zip upon successful completion of ci/android_debug. (flutter/engine#53107)
2024-05-30<EMAIL_ADDRESS>Roll Skia from 949b8cefbf87 to 693d9362f0f6 (2 revisions) (flutter/engine#53114)
2024-05-30<EMAIL_ADDRESS>Disable Impeller when the manifest explicitly disables it (flutter/engine#53108)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC jacksongardner@google.com,rmistry<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Commit queue failed; closing this roll.


'401 Unauthorized'

I got ERROR
onError: java.net.ProtocolException: Expected HTTP 101 response but was '401 Unauthorized'
at okhttp3.internal.ws.RealWebSocket.checkUpgradeSuccess$okhttp(RealWebSocket.kt:224)
at okhttp3.internal.ws.RealWebSocket$connect$1.onResponse(RealWebSocket.kt:170)
at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:519)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:764)
it seems this problem has only suffered a few days,
Has anyone fixed this problem yet?

@dat0106 thank you for reporting this. This repo does not use the Locate API directly. What app or client are you using that depends on this library? There is some additional code that the caller will need to add independent of this repo. If you can help provide a pointer, we can try to let them know.
Because the access token requirement has broken this client and the ndt7-client-ios client, we've rolled back the access token requirement. However, only the ndt7-client-ios repo has code for accessing the Locate API. The ndt7-client-android sources apparently do not. So, we cannot update all clients before we restore the flag flip without a pointer.

This is likely fixed by recent changes. Please let us know if there is still an issue. https://github.com/m-lab/ndt7-client-android/pull/9


Add use a version from command line

Added the --use  possibility to "bump" and to "release" commands.
It allows for bypassing the version file, and working with a version directly from command line, i.e:
./semver.sh bump -u 1.2.3 major
will produce: 2.0.0 even if the current file has 4.5.6.

Small suggestion, how about introducing an optional argument to --pretend instead of adding the new --use option? Something along the lines of
--pretend[=<version>]

You might be right, but the --use also goes into the file.
I'm really not sure what's the better use case.
The --pretend can be used together with --use.
On 5 Apr 2016, at 16:32, François Saint-Jacques<EMAIL_ADDRESS>wrote:
Small suggestion, how about introducing an optional argument to --pretend instead of adding the new --use option? Something along the lines of
--pretend[=]
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub

Oh, you mean that it'll overwrite the file with the new computed version.

Yes, it works exactly the same, but takes the version from a command line.
On 5 Apr 2016, at 17:07, François Saint-Jacques<EMAIL_ADDRESS>wrote:
Oh, you mean that it'll overwrite the file with the new computed version.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub


empty groups should be hidden if field visibility active + e2e

What changes are proposed in this pull request?
Empty groups should be hidden if field visibility applied

[x] write E2E test failing first
[x] Fix
[x] Re-ordering/ placement has no issues

https://github.com/voxel51/fiftyone/assets/109545780/d002535b-c2ea-4f41-9198-5298d08dbf45
How is this patch tested? If it is not, please explain why.
(Details)
Release Notes
Is this a user-facing change that should be mentioned in the release notes?

[ ] No. You can skip the rest of this section.
[ ] Yes. Give a description of this change to be included in the release
notes for FiftyOne users.

(Details in 1-2 sentences. You can just refer to another PR with a description
if this PR is part of a larger change.)
What areas of FiftyOne does this PR affect?

[ ] App: FiftyOne application changes
[ ] Build: Build and test infrastructure changes
[ ] Core: Core fiftyone Python library changes
[ ] Documentation: FiftyOne documentation changes
[ ] Other

Playing around with this, I'm thinking sidebar entries should be disabled when field visibility is on to prevent reorder issues

Playing around with this, I'm thinking sidebar entries should be disabled when field visibility is on to prevent reorder issues

makes sense to me to disable reordering

I also think the + ADD GROUP entry should be hidden, as any group added will be immediately hidden by the new behavior (recording has an example)
https://github.com/voxel51/fiftyone/assets/19821840/98c5e70d-f491-464b-a58a-b9f21ecba403

Added a test as well

I defer to sashank on approval. But the feature looks great! Some nice assertions in e2e too


Repeating Matrix objects only show once, when using VGroup

Description of bug / unexpected behavior

I found this weird, but I am not sure whether this is correct or wrong approach
when I use VGroup to group the same Matrix objects more than one, it looks that only the last one is appearing, and the other one not, its place is empty
Expected behavior

it works for me when I add .cop() method to  like so,
How to reproduce the issue

Code for reproducing the problem
matrix_r = Matrix([["x"], ["y"]])

lambda_condition_eq = VGroup(
            MathTex("Mr = \lambda r"),
            right_arrow,
            matrix_M,
            matrix_r,
            equal_sign,
            MathTex(r"\lambda"),
            matrix_r,
        ).arrange(RIGHT)

here the last matrix_r is only appeared
matrix_r = Matrix([["x"], ["y"]])

adding `.copy()`
lambda_condition_eq = VGroup(
            MathTex("Mr = \lambda r"),
            right_arrow,
            matrix_M,
            matrix_r.copy(),
            equal_sign,
            MathTex(r"\lambda"),
            matrix_r,
        ).arrange(RIGHT)

Additional media files

Images/GIFs

originally

with .copy()

Logs
Terminal output

PASTE HERE OR PROVIDE LINK TO https://pastebin.com/ OR SIMILAR

System specifications
System Details

OS (macOS Big Sur 11.1):
RAM: 8GB
Python version (python/py/python3 --version): 3.9
Installed modules (provide output from pip list):

PASTE HERE

LaTeX details

LaTeX distribution (e.g. TeX Live 2020):
Installed LaTeX packages:

FFMPEG
Output of ffmpeg -version:
PASTE HERE

Additional comments

Thanks for filing an issue, this is helpful.
As you said, I think it's the wrong approach - the mental model of VGroups I have is that they are lazy, ad-hoc groupings that don't copy data.
However, I see where you're coming from. Perhaps there should be a warning if the same object is added to a Group twice? Something like:
Warning: The same Mobject (<mobject_str_or_repr_call>) was added to a Group more than once. Repeated adds are ignored.

(For future reference, a full reprex is below)
from manim import *

class TestScene(Scene):
    def construct(self):
        matrix_r = Matrix([["x"], ["y"]])
        matrix_M = Matrix([["M_0"], ["M_1"]])
        equal_sign = MathTex("=")
        right_arrow = Arrow(start=LEFT, end=RIGHT)

        lambda_condition_eq = VGroup(
                    MathTex("Mr = \lambda r"),
                    right_arrow,
                    matrix_M,
                    matrix_r,
                    equal_sign,
                    MathTex(r"\lambda"),
                    matrix_r, #.copy(),
                ).arrange(RIGHT)

        self.add(lambda_condition_eq)
        self.wait()

I think repeated adds get ignored because Python passes arguments by reference. It works as intended when you pass the Mobjects by value into VGroup() as below.
It might be common for users to pass them by reference, as @ammar-faifi did. So I think it'll be more useful to copy the repeated adds as we encounter them while adding the Mobjects to the VGroup.
I'm new to contributing, so please let me know if I went wrong anywhere😅
I'd like to help with this too, can I take this issue up?

When arguments are passed by value
class TestScene(Scene):
    def construct(self):
        """
        matrix_r = Matrix([["x"], ["y"]])
        matrix_M = Matrix([["M_0"], ["M_1"]])
        equal_sign = MathTex("=")
        right_arrow = Arrow(start=LEFT, end=RIGHT)
        """

        lambda_condition_eq = VGroup(
                    MathTex("Mr = \lambda r"),
                    Arrow(start=LEFT, end=RIGHT),
                    Matrix([["M_0"], ["M_1"]]),
                    Matrix([["x"], ["y"]]),
                    MathTex("="),
                    MathTex(r"\lambda"),
                    Matrix([["x"], ["y"]]),
        ).arrange(RIGHT)

        self.add(lambda_condition_eq)
        self.wait()

Possible way to handle arguments
for mobject in mobjects
    if mobject is in vgroup_obj
        vgroup_obj += mobject.copy()
    else
        vgroup_obj += mobject


feat(auth): build token implementation

Server PR for Epic 1: Build Tokens.
Changes:

Conversion of router/middleware/token package to router/middleware/auth, which will now only retrieve auth headers from http requests, rather than generate/parse tokens
Creation of internal/token package, which features a manager that is set up in the context using various new flags added to main.go. In brief, it's a one-stop-shop for token minting and validating and offers configurability to a degree.
Additional claims added to Claims struct, including information about the token type as well as relevant fields for that token (build tokens have build ids and repo).
Removal of global permissions for agents
Worker endpoints used for check in (POST / PUT) have been put behind MustWorker() permissions check, which validates the symmetric token shared between server and worker
Build/Step/Service/Log update endpoints have been put behind MustBuildAccess() permissions check, which validates the build token, which is provided as a unique auth scope for each build.
Add GET endpoint for retrieving a build token, which validates the build's status and creates a build token
Addition of a private key, which will be seeded in the server environment, much like the secret, which will be used to sign and validate all tokens.
Updates made to MustSecretAdmin which will scope requests with build token auth based on the repo within the token
Claims will be established in the context for baseAPI endpoints before the user

depends on: https://github.com/go-vela/types/pull/276

proposal?

https://github.com/go-vela/community/pull/755


Fix build on DragonFly (part 1)

There are still problems when linking the final savi binary, but that seems to be related to not having the static LLVM binaries available on DragonFly (yet).
There are two open tasks for getting Savi on DragonFly:

build static LLVM libraries (working on that).
build libsavi_runtime

Both are more difficult to build via github actions or cirrus CI, as they don't have DragonFly runners.
Once I get things working, I can provide a savi port for DragonFly that can be installed as pkg ins savi. Though, I am a bit concerned about the LLVM dependency... building non-standard LLVM as a dependency of a savi port take too much CPU. Hoping that they change the default of shipping with the static libs in the next version (of the DragonFly / FreeBSD port).

I have no problem merging this (so I'm marking it as approved).
However, if we want to officially support DragonFly we'll need a way to run CI builds for it. So for now this will be an "unofficial/best-effort support" level.

It'd be good to have official support for DragonFly or just CI. Same for OpenBSD / NetBSD. It should be easy to add support for these. Concerning CI - you could not run the spec on DragonFly, and this is the part that most likely exhibits errors. So it would be only a continuous build. There is not much that could fail here.

Maybe it's possible to use a FreeBSD runner on CirrusCI but use some particular clang magic to "cross-compile" to DragonFly?

That would probably work. IIRC, I once did that for Rust where I just used the DragonFly live ISO image that contains all sources and libraries. Another option is to run a virtualized DragonFly from Cirrus via qemu (not sure if this would work).
For now I concentrate on a DragonFly ports definition.

Closing in favor of #381


Flesh out JS propagation docs

The following need to be documented:

[ ] W3C propagation with the w3cpeopagator type in openetelemtry/core
[ ] B3 propagation
[ ] Baggage propagation (perhaps a separate doc)

I am closing this now due to the restructuring of the docs, see #5690


Record formatting feedback

The 2 recommended multi-line record formattings can be problematic. And in fact trying to use the above recommendations as a beginner was a very frustrating experience. Here's why.
The first multi-line form has editor-based issues that may require manual, line-by-line correction on indent/outdent. I stopped using this form because of the tedious formatting corrections. For example, In VS 2017 outdent will cause later fields to shift out of line with the first field, creating a compiler error until corrected.
// before outdent
    let myRecord =
        { Field1 = 1
          Field2 = " " }

// after outdent (Shift-Tab), compile error: No assignment given for field Field2
let myRecord =
    { Field1 = 1
        Field2 = " " }

The second multi-line form simply does not compile with some type definition features or provides warnings with some constructions.
type IMyInterface = interface end

// compiler error: Unexpected keyword interface
type MyRecord = {
    MyField : int
}
interface IMyInterface

// warning: "possible incorrect indentation"
let foo a =
    a
    |> Option.map (fun x -> {
            MyField = x
        })

The only record syntax I've found that always "just works" is this.
// this works with all type features, like interface
type MyRecord =
    {
        SomeField : int
    }
    interface IMyInterface

// no warning
let foo a =
    a
    |> Option.map (fun x ->
        {
            MyField = x
        })

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

ID: 8c09996f-24ac-cf39-ef43-d7909cbc2b89
Version Independent ID: 1efdd523-8552-6421-e149-74f76826ef8f
Content: F# code formatting guidelines
Content Source: docs/fsharp/style-guide/formatting.md
Service: unspecified
Product: dotnet-fsharp
GitHub Login: @cartermp
Microsoft Alias: phcart

@mathid, @cartermp, you closed #6775 which also addresses this issue. Though one could argue it could be further improved, esp. about the syntaxes that "sometimes" work (only with verbose syntax, but even than, as shown above, it can still fail sometimes with a warning).
I.e., the record syntax says "Placing the opening token on the same line and the closing token on a new line is also fine:", but this is only sometimes fine and can lead to warnings or even errors. I think it should be un-recommended, but a warning about that syntax should remain.
I'd also like to suggest to change the line "// Unusual in F#" on the record syntax that has { and } on their own lines. I use a-plenty, for the same reason the OP here uses it: it eases formatting and in- and outdenting. While more verbose, I think it is better readable.

Unfortunately, I'm not sure if we'll change this one. Changing bracket-related formatting like that is pretty universally against core F# formatting in the F# codebase and the bulk of code that you'll find online. Bucking that trend is something I see as more negative, unfortunately.

@cartermp, could you elaborate how it (the guideline) is used currently? Because as the examples show above, it cannot even be compiled. meaning that we have a guideline that, if followed, leads to non-compilable code.
Are you sure the guideline is like what is used in F#'s own codebase, if so, why doesn't it lead to compile errors there?

@abelbraaksma We do not write code as you have written; however, based on this and some more thought I decided it's worth bucking the trend and going with brackets on their own lines when piping or adding members.

I like these changes. Prior to this discussion I had not even realized that the with keyword would allow the expanded syntax below to work.
type MyRecord = {
    Prop1: string
} with interface IMarker

In general I think (probably like most of you) it is not great practice to use interfaces or class properties with F# record and union types. However, it can be helpful sometimes for interop reasons. I had previously used marker interfaces for more convenient interop vs union types. I could not think of a better way to solve my problem at the time, although I would avoid them now. In any case I am glad to see valid syntaxes documented.
I was surprised to see the concise syntax recommended as the default. It looks nice in online examples, but I find it not very pragmatic for everyday use (issues: git diffs, cut-paste, in/out-denting). But no biggie since there are multiple options.
Thanks!


Confused by disk space usage

I'm confused by the amount of disk space that my wal-e backups are taking up (and the associated AWS bill).
The total size of all my databases is a smidgen over 3GB.
Yet after running wal-e on an empty bucket for 12 days the total disk usage of that folder is161GB.
I run a full backup-push every week.

I ran the command to delete everything but after it had completed I still had a folder with 345GB of data.
I cleaned that up by hand to start again from scratch.
When I now run the command to show backup size I see that I have three backups each around 4GB in size.
Yet the total usage is 161GB and rising.
Here are the relevant settings from my postgresql.conf.
wal_buffers = 16MB
wal_level = archive
archive_mode = on
archive_command = 'wal-e --terse wal-push %p'
archive_timeout = 60

Is all this normal (and if so, why) or am I doing something wrong?
Thanks, Darren.

Apart from the backups you do with backup-push you are also uploading every WAL (Write-ahead log) file to S3 (that is what the archive_command does). These files contain basically every modification to your database and allow doing point-in-time-recovery of the database.
So my first guess would be that you have a lot of write traffic in the database so you end up uploading a lot of WAL files into S3. What delete will do for you is delete WAL files older than any of the full backups left in storage.

Hello, thanks for replying.
What you say makes sense and my database is indeed write-heavy.
So do you know if there is anything I can do to reduce disk space?
As far as I can see it will just keep on growing.

Have you tried looking at wal-e backup-list, to make sure only five backups are retained? You might want to remove --terse to better see what's going on.
If that seems to be working properly, I'd list files in the WAL directory (wal_005) to see if there are not files significantly older than your oldest backup.
Finally, check your measurements. 160GiB of logs is more than I'd expect for such a small database.
If none of these things seem awry, then everything is probably in working order. If that storage is a problem for you, you may need to find out how to avoid logging so many data changes and coping with the reduced durability of those data changes.

Thanks for getting back to me.
I've had a think about it and have decided to turn off continuous archiving and just run a daily backup-push from cron.
If I do that then my storage costs should drop significantly.
I am happy to live with my database being up to 24 hours out of date.
My postgresql.conf now looks like this:
wal_level = archive
#archive_mode = on
#archive_command = 'wal-e --terse wal-push %p'
archive_timeout = 60

However, when I run a backup-push now I see this message at the end.
NOTICE:  WAL archiving is not enabled; you must ensure that all required WAL segments are copied through other means to complete the backup

Is that telling me that I am doing something wrong or is it safe to ignore?
Thanks, Darren.

On Sun, Oct 23, 2016 at 1:56 PM Darren Greaves<EMAIL_ADDRESS>wrote:

Thanks for getting back to me.
I've had a think about it and have decided to turn off continuous
archiving and just run a daily backup-push from cron.
If I do that then my storage costs should drop significantly.
I am happy to live with my database being up to 24 hours out of date.
My postgresql.conf now looks like this:
wal_level = archive
#archive_mode = on
#archive_command = 'wal-e --terse wal-push %p'
archive_timeout = 60
However, when I run a backup-push now I see this message at the end.
NOTICE:  WAL archiving is not enabled; you must ensure that all required WAL segments are copied through other means to complete the backup
Is that telling me that I am doing something wrong or is it safe to ignore?

You need at least the WAL over the duration of the backup to recover the
database successfully. The two must be combined to make a complete base
backup.

OK, I understand, thanks.
I found this blog post today that suggests configuring S3 to automatically delete files older than a set number of days.
I'm going to try that and see if it reduces disk space (and ultimately my AWS bill).

You can do that, yet it would not be different than triggering deletion via
WAL-E with a similar time criteria.
On Tue, Oct 25, 2016 at 12:46 PM Darren Greaves<EMAIL_ADDRESS>wrote:

OK, I understand, thanks.
I found this blog post
https://edwardsamuel.wordpress.com/2016/05/24/set-up-scheduled-postgresql-backup-to-aws-s3-using-wal-e/
today that suggests configuring S3 to automatically delete files older than
a set number of days.
I'm going to try that and see if it reduces disk space (and ultimately my
AWS bill).
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/wal-e/wal-e/issues/283#issuecomment-256154900, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAAcF3LYU297ir4hSomJ6lJWMXGdxoimks5q3lx4gaJpZM4KXvkc
.

In theory yes, but as I mentioned above I still had 345GB of data left after deleting all backups.
So for me anyway, it's worth trying.
I'll report back in a few weeks if it made any difference or not.
Thanks again for all your help with this.

It's been a month since I set my S3 bucket to expire old data.
The size of the bucket is now 101.84GB.
So clearly doing it that way has made a difference (just deleting old backups using /usr/local/bin/wal-e --terse delete --confirm retain 5 left the disk usage around 300GB after a month).


Coalesce all compatible no-op libfuncs into a single function.

Checklist

[ ] Linked to Github Issue
[ ] Unit tests added
[ ] Integration tests added.
[ ] This change requires new documentation.

[ ] Documentation has been added/updated.

Codecov Report
Attention: Patch coverage is 78.41727% with 30 lines in your changes missing coverage. Please review.

Project coverage is 83.05%. Comparing base (ab5199b) to head (9c2993f).

Files with missing lines
Patch %
Lines

src/libfuncs/bounded_int.rs
0.00%
11 Missing :warning:

src/libfuncs/box.rs
0.00%
9 Missing :warning:

src/libfuncs.rs
88.46%
6 Missing :warning:

src/libfuncs/starknet.rs
78.57%
3 Missing :warning:

src/libfuncs/nullable.rs
93.33%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #919      +/-   ##
==========================================
+ Coverage   82.96%   83.05%   +0.08%
==========================================
  Files         120      115       -5
  Lines       34325    34094     -231
==========================================
- Hits        28479    28318     -161
+ Misses       5846     5776      -70

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


Bugs with math calculations, numbers not strings

See related issue:
https://github.com/nolimits4web/swiper/issues/2789
Breakpoints logic fix for responsiveness, related code was concatenating strings instead of adding numbers.  Force integer with parseInt.  Also make sure that slidesPerView is using the breakpoints current value.  Something still isn't right though but this is worth discussing and I think part of this merge request should be taken in.

I've openned a new pull request from another fork, see https://github.com/nolimits4web/swiper/pull/2838


Alow regex after "of" in for(...of...)

Q
A

Bug fix?
yes

Breaking change?
yes

New feature?
no

Deprecations?
no

Spec compliancy?
yes

Tests added/pass?
yes

Fixed tickets
#456

License
MIT

I initially tried to set this.state.exprAllowed in the parser, after eating the "of" word (here), but then I decided to fix this bug directly in context.js.
This fix, teorically, has a "bug": in for (a++ of /foo/g);, the regex is parsed as a division because ++ can be followed by an expression. In practice this can't happen, because a++ is not a valid assignment target and thus babel throws before encountering /.

This looks fine, but we may also want to ref acorn's fix, as there's also another case of handling contextual yield.

The bug with yield fixed by that commit already works in Babylon: https://astexplorer.net/#/gist/806e25352b11e858e13a0ccaf722816f/latest


Taking sponza as a test scene

Hi, I recently try to load sponza scene as my test scene.
The scene file consists of two types of media, one is obj mesh file, the other one are images.
however, right now, the iqm tool chain not parser the mtl or usemtl to recognize material texture as the resource id later on.
so in my eyes, I should add some features that support mtl parser for obj format files. because only under this way, we probably gain texture id use you iqm loader.

If necessray I can upload scene files for you.

Please share some idea with me, just cope it once for all.

The only supported model format at the moment is IQM, which is a pretty bare-bones format containing only the vertex data and some material/texture ID/names.  If you want to load the sponza scene, I would recommend loading it into blender, and setting the material of each mesh to the texture name.
For example, if a wall is using tex_wall_diffuse.png, you would give it a material with that name, and use the IQM expoter plugin to export the model with material names, and then make sure you store your textures in the texture folder of the engine/game data.
I agree that it's not an ideal solution, but its a pretty compact way to include meta-data like that directly in the model file.  An alternative would be to do it in-engine via configs and such, or perhaps even some external level editor that allows you to load a model and apply textures to it/export it with that data.

Thanks for your reply.
For now, I am focusing on add material feature into iqm.
Actually my initial thoughts were to add an extra loader and parser in your iqm module, however, this way will kindly kill the idea and break the original rules of IQM.
so I would like to do some modification with it.

Add a new struct of materiallib in which hold a host of material which will be referenced by mesh material idx.

Add a new struct of material which defines some normal or common vars, like map_kd something like that, you know that.

Add new member field material_lib into a struct of mesh, this will help this mesh to locate accurate material library later.

how do you think about this modification?
look forward to your reply.

I'm not sure I entirely understand to be honest, perhaps just do whatever you want with your fork and I can take a look at that before we do any pull request stuff.

Here is the modification commite log =>
https://github.com/heitaoflower/iqm/commit/2a4032a1725bab5de12461ec8858580d9b5f34d6
for now, only support obj format mesh which is reference external material config info.

I could able to make some minor changes after tomorrow, and organize the code.

Those changes appear to be for the example C++ IQM loader, right?

I will push later on. by the way, I wonder if you can recommend me some tools to utilize lives at ##oodnet/freenode, the way of the web is not very convenient indeed.

You'll need an IRC client for your OS, or use https://webchat.freenode.net/ and join the channel ##oodnet

I am complete the original job to load sponza scene into engine.
however the direction of the world is incorrect. do you know what is going on with it ?

In unity or other engines the batman as below figure:

in contrary the direction was incorrect as below figure in our engine:

By the way , I have upload the latest asset of sponza to the master branch .
https://github.com/heitaoflower/exengine/commit/7b897ede9873c4c8d3a8ba7ca9ecaba0fd51a351

Unity uses Z as the up-axis, I think.  You'll probably just need to rotate your models -90 degrees on the X axis before exporting to fix it, or make the iqm loader swap Y and Z.

Thanks for your reply.
This is a snapshot of learnOpenGL demo.

The model always face screen outside. and also i try to fixed or copy the same camera view and proj matrix into our engine, the result is not identical.
Below configure is our engine .

Totally rendering by OpenGL!

Maybe you are right I should fix to with iqm loader maybe.

I think you are right, I found a snippet code as below.
epositions.add(Vec4(vkey.attrib[0] < 0 ? Vec3(0, 0, 0) : attrib[0][vkey.attrib[0]].zxy(), 1));
if (vkey.attrib[2] >= 0) enormals.add(attrib[2][vkey.attrib[2]].zxy());
the order of vertex data in iqm was zxy!!

Likely due to a lot of the big engines like Unity using Z as their up-axis.  It's easy to fix though, either rotate -90 degrees on the X axis before exporting your model, or just swap the Y and Z when you load the model.


Expose all celestia-node required endpoints through gRPC

Summary
Node has to use core's/comet's RPC additionally to gRPC. That is very confusing.
The current app API is not sufficient and lead to bad design decisions in celestia-node which led to proposals that will manifest these even further https://github.com/celestiaorg/celestia-node/issues/2931
Problem Definition
Node currently uses both RPC (comet) and gRPC (app). Apparently, the only one reason for that is only comet's RPC exposes proofs for state queries currently, or rather ABCI queries (see #3422).
Another reason, is that bridge nodes currently get their block data via RPC. That is also not ideal as the block data should be binary/protobuf encoded instead of a large JSON file.
If these two changed, celestia-node could solely rely on app's gRPC.
One of the places The only place where node uses rpc is here:

https://github.com/celestiaorg/celestia-node/blob/2d2adb3a2504f42bb56e08ef2b8bacba52c54c86/state/core_access.go#L348
reason being that node wants to verify proofs here: https://github.com/celestiaorg/celestia-node/blob/2d2adb3a2504f42bb56e08ef2b8bacba52c54c86/state/core_access.go#L369-L377

Proposal

[x] Expose ABCI queries from comet RPC through gRPC proxy or returns proofs in other ways. #3423
[ ] Expose a way to subscribe to block data via gRPC:

essentially subscribe to the same event as node does (signedBlock) but with local client and then stream result to new endpoint

false alarm: https://github.com/celestiaorg/cosmos-sdk/blob/02244ae2a73e053234ca2de6e68a97974edb952a/client/grpc/tmservice/service.go#L221

Actually, not quite: https://github.com/celestiaorg/celestia-app/pull/3423

is it possible to expose these two methods from core, and eventually move the logic to node if possible?
https://github.com/celestiaorg/celestia-core/blob/793ece9bbd732aec3e09018e37dc31f4bfe122d9/rpc/core/routes.go#L33-L34

is it possible to expose these two methods from core, and eventually move the logic to node if possible?

Yes, should be very, very easy!

and eventually move the logic to node if possible?

Also. Do you mind opening an issue in node for that?

In addition to the subscribeBlock, bridge nodes rely on several other RPC endpoints from the celestia-core SignClient interface. Most can be replaced by implemented by the cosmos-sdk gRPC. Below is a comprehensive list of RPC methods used by bridge nodes, along with the corresponding gRPC methods in cosmos-sdk that can fetch the same data:
EventsClient:

Subscribe/Unsubscribe <-> missing

SignClient:

Block <-> BlockByHeight
BlockByHash <-> missing
SignedBlock <-> BlockByHeight + GetValidatorSetByHeight
Commit <-> BlockByHeight (Commit field)
Validators <-> GetValidatorSetByHeight
Status <-> GetSyncing

Additional functionalities like ProveShares and DataRootInclusionProof are also missing in gRPC and should be proxied.

Current services exposed by app:
⋊> ~/G/L/lazyledger-app on ad18465a  grpcurl -plaintext localhost:9090 list
celestia.blob.v1.Query
celestia.mint.v1.Query
celestia.qgb.v1.Query
cosmos.auth.v1beta1.Query
cosmos.authz.v1beta1.Query
cosmos.bank.v1beta1.Query
cosmos.base.node.v1beta1.Service
cosmos.base.reflection.v1beta1.ReflectionService
cosmos.base.reflection.v2alpha1.ReflectionService
cosmos.base.tendermint.v1beta1.Service
cosmos.distribution.v1beta1.Query
cosmos.evidence.v1beta1.Query
cosmos.feegrant.v1beta1.Query
cosmos.gov.v1.Query
cosmos.gov.v1beta1.Query
cosmos.params.v1beta1.Query
cosmos.slashing.v1beta1.Query
cosmos.staking.v1beta1.Query
cosmos.tx.v1beta1.Service
grpc.reflection.v1alpha.ServerReflection
ibc.applications.transfer.v1.Query
ibc.core.channel.v1.Query
ibc.core.client.v1.Query
ibc.core.connection.v1.Query

Decide on adding missing functionality to existing services  (e.g. cosmos.base.tendermint.v1beta1.Service) or add a new service that is specific to node/celestia. The latter is probably cleaner and preferrable.

An additional point is that the block gRPC API should be designed to support larger blocks, so we won't need to rework it as block sizes increase.

Additional functionalities like ProveShares and DataRootInclusionProof are also missing in gRPC and should be proxied.

Full nodes should be able to handle these queries themselves since they have all the relative data. I think ProveShares should really be deprecated and removed on the celestia-app side because it's a DoS vector (you need to build the square everytime)

assigned myself as I opened this: https://github.com/celestiaorg/celestia-core/pull/1513
If there are other parts that need to be done, let me know to see if I can get them done while I am at it


Default Answers not Displaying

The NERC Template has some tables as default answers for their last two sections of the template.
Upon creating a plan, these do not get pre-filled as answers and displayed to the user.(edit plan page)
Also tested by adding default answers to other plans, but none displayed.

Test on NERC template and tables are showing where they should. Closing out.


Keep track of updates from old endpoint to deal with scripts having an 'exec' statement

Addresses issue #113

Lipstick-pull-requests #94 FAILURE
Looks like there's a problem with this pull request

Lipstick-pull-requests #95 FAILURE
Looks like there's a problem with this pull request


Support status hook function in the new job service.

Use the job status hook to report and update job status.

Mark task done!


SIL: Revert public linkage for @_silgen_name forward declarations

It turns out that the stdlib build depends on internal functions with @_silgen_name getting hidden linkage in some configurations. Instead of messing with the linkage computation, just fix the stdlib/Error.swift test by making setWillThrowHandler public to give it the right linkage.
Reverts https://github.com/swiftlang/swift/pull/78183.
Resolves rdar://141590619.

@swift-ci please smoke test


fix(lightbox-media-viewer): scrollbar disabled fix

Related Ticket(s)
https://github.com/carbon-design-system/carbon-for-ibm-dotcom/issues/2460
Description
This is a very unusual problem that only occurs at a very small resolution range and from my tests, only on chrome for windows since macos hides scrollbars while not in use. Might be a browser bug but I couldn't find anything online.
To replicate you need to resize the window until the content is about to overflow. It will show a disabled scrollbar for a small range until it actually needs to enable it even if overflow-y is set to auto, which shouldn't happen.

The range is always 16px which is exactly the width of the scrollbar.
For example, I found this 2 ranges where it happens:
1002px x 749px to 1018px x 749px
1200px x 687px to 1216px x 687px
It's happening on both lightbox media viewer stories:

The only way I found to fix it was to use the deprecated css rule overflow-y: overlay which overlays the scrollbar instead of taking up space. It's still fully supported by webkit/blink-based browsers and from my tests doesn't affect other browsers but content might appear behind the scrollbar. This had to be applied to the expressive modal container.

@asudoh, from my research only supported in WebKit-based (e.g., Safari) and Blink-based (e.g., Chrome or Opera) browsers, but deprecated. It worked on Chrome on my PC. Couldn't test it Mac OS since hides the scrollbars while not in use.

Couldn't test it Mac OS since hides the scrollbars while not in use.

@NSDrowned You can change this behavior so you can test it.
System Prefs > General > Show scroll bars

@kennylam, thanks! Just tested it:

Seems to happen in chrome for mac os too, but not happening in Safari. I'm thinking it might be a Chrome bug. There's no reason for a disabled scrollbar to show if it's not needed.

@asudoh and @kennylam, I tried to find another solution but couldn't find anything that worked. Almost convinced it's bug in Chrome. Not sure what can be done about it or if it's worth waiting for a fix since it's a very small range when it happens. Any thoughts?

@NSDrowned this can wait. Let's get the Carbon upgrade bugs in first.

@NSDrowned just checking on this, is this PR still active?

Closing... not a suitable fix.


Massive rework

Fixes #327
Fixes #325

Hey @janhohenheim ! Firstly, fantastic project, definitely plan on using this and learning from it!
Just a heads-up though :warning: ; I just tried to take this branch and change it in the same way as you would the main branch for a new project, and that process is super painful :sweat_smile:
The main issue is that the project name is currently baked into bunch of binary files, so doing a simple crate rename breaks things subtly.
I figured this out after a lot of head-scratching - I couldn't find any mentions of foxtrot in the source etc... but then it finally dawned on me that it's baked into the glb files (ie comes from the blender file courtesy of blenvy).
I'm not sure what the most straight forward solution is, but in case it helps, the steps I used were

first a bunch of sed/sd runs on the text files
used eg find assets -type f -exec bbe -e 's/foxtrot/NEWNAME/' '{}' -o '{}'_new \; to create edited binary files
Renamed all files not ending in _new to _bak suffixed names
Ran a rename on all files ending _new to remove that suffix

There are probably better ways of doing this, and/or maybe a simple script would help. PS I had to compile bbe as it wasn't included in my distro: https://github.com/hdorio/bbe

@jmetz good catch! Maybe I could only have the blend file in-tree and have the user run the Blenvy stuff to generate the .glbs?


Package command copies publishConfig.directory into the generated package.json

Describe the problem
Referencing svelte-kit package generated packages through the workspace protocol of pnpm doesn't work out of the box. Most monorepo tools (pnpm included) will normally just symlink the root/source directory when you use a workspace version (like workspace:*). Since svelte-kit package outputs a new directory structure with its own package.json file, that doesn't work out of the box. You can however use a new feature (see this issue) in pnpm that allows you to specify the directory of the package (containing a new package.json) through the publishConfig.directory. This works great, and solves almost all of the problems. However, the package command copies the publishConfig.directory setting over to the new generated package.json file. This can cause a lot of issues, since that directory does not exist.
Describe the proposed solution
I suggest just removing the publishConfig.directory key if it exist from the generated package.json file, just like you already do for the script tag. I believe something like delete pkg.publishConfig?.directory close to where you delete the script key would suffice. However, it might be cases where this is not the desired behavior.
Alternatives considered
It does not seem to cause immediate problems for pnpm at least, since it only looks at the publishConfig.directory key once for the root/source directory, and not recursively. So it might be fine to keep it as is. But to me having the publishConfig.directory inside the generated package.json doesn't make sense, and I can imagine several cases where it would be troublesome.
Importance
nice to have
Additional Information
No response

I'm not against this suggestion, but I do wonder, however - why do you need to run SvelteKit packaging on monorepos?
You may just import the path of the Svelte files to your other projects.

@Tal500 You can just import paths, but then you'll not use the library the same way others use it when it's distributed. The monorepos I work with is usually one application and a bunch of distributed libraries owned and maintained by the app, but used by other apps as well. Then it's nice that using "workspace:*" in the monorepo that owns a package provides the same API as when external apps/packages imports it using a fixed version.

@Tal500 You can just import paths, but then you'll not use the library the same way others use it when it's distributed. The monorepos I work with are usually one application and a bunch of distributed libraries owned and maintained by the app, but used by other apps as well. Then it's nice that using "workspace:*" in the monorepo that owns a package provides the same API as when external apps/packages imports it using a fixed version.

As a temporary/alternative solution to your problem, you can use path aliasing in Vite.
Just as SvelteKit has $lib to be path aliased to your lib dir, you can also define Vite alias in the configuration for the library name to also reference the the lib dir.
See for example what I did there:
https://github.com/Tal500/svelte-file-dropzone/blob/b01b64554395343721a52378e286f0193664695f/vite.config.js#L13
And then I could just do import {...} from 'svelte-file-dropzone' in the example, so the viewer will be fooled to think it is actually get loaded like a regular NPM library.

@Tal500 The alias and resolution of packages is not the problem. The problem is that the svelte-kit package command copies settings over to the generated package that's specific to the original/root/source package.json file. These settings causes trouble when you later try to publish or do things with the generated package.
More over, I think hard coding resolutions is a bad pattern. It's better to get the package manager/monorepo tooling to do this for you, as that's what they are designed to do.


lnwallet+interface_test: Returning destination addresses of Unconfirmed Transactions

fixes #2442
This PR refactors the helper function unminedTransactionsToDetail to return the destination addresses of unconfirmed transactions from the transaction summary.

@halseth apologies it took a while, but have moved the test from integration to unit

Thanks @ccdle12! Could you squash it down, and I'll give it a review :)

Thanks @ccdle12! Could you squash it down, and I'll give it a review :)

Thanks @halseth appreciate the review! all squashed down

@wpaulino thanks for review, just saw the updates, I'll start working through the comments.

@halseth thanks for the review! squashed and rebased

Hi @halseth ,
Apologies I just saw the PR at #1933, really don't mind which one is merged 😃.
I've just rebased for reference and this one updates a test on interface_test.go so feel free to use the test as an update on the other PR if applicable!

Still relevant?

Hi @Roasbeef
Testing using simnet on master at: 36983214e8f7d24042fda61b048bb41daf6061da
dest_addresses are still empty when 0 confirmations. When receiving 1 confirmations addresses appear.
Send Coins
$ lnca listchaintxns

        {
            "tx_hash": "8dfd8575a3fd47a16b372a95872453ee6b4ecb561a22d63827c3c30935342385",
            "amount": "-1008250",
            "num_confirmations": 0,
            "block_hash": "",
            "block_height": 0,
            "time_stamp": "1562078484",
            "total_fees": "8250",
            "dest_addresses": [
            ],
            "raw_tx_hex": "0100000000010103f6e198850cf385148177a212f7e28661188471bde2486db66a3173f71a3c110000000017160014bbca09144089d21d0c97ac227e016fce247bbaa2ffffffff02868ff629010000001600144b8b700ea404cc24ca6fa1d7ba90cbf8bcc1e84840420f000000000017a9142276c6ed7cb46150a59a046aa1899b85841a7ba18702483045022100e7eda8dceb2395d1332328d53557e140d60aa766c6ffa4f5247cf53e51e13cca0220183ab1636841b4e0aa8685a4cd2e7b8468977de473920b7596c65914a1ee847101210279dfe94e011081a13bb989b82d0cc7c71af9ec14677e9aaf7cdbe408ab1b154e00000000"
        }
    ]

Generate 1 Block:
        {
            "tx_hash": "8dfd8575a3fd47a16b372a95872453ee6b4ecb561a22d63827c3c30935342385",
            "amount": "-1008250",
            "num_confirmations": 1,
            "block_hash": "300dbbe0c1c0ff80a8c8ece3ca928bc7e41c47e7905c0f3881b074042119ed6e",
            "block_height": 509,
            "time_stamp": "1562078562",
            "total_fees": "8250",
            "dest_addresses": [
                "sb1qfw9hqr4yqnxzfjn058tm4yxtlz7vr6zgyctszh",
                "rYiRNetzL3Uv58KnPdV9CsvUrMVmExnGzW"
            ],
            "raw_tx_hex": "0100000000010103f6e198850cf385148177a212f7e28661188471bde2486db66a3173f71a3c110000000017160014bbca09144089d21d0c97ac227e016fce247bbaa2ffffffff02868ff629010000001600144b8b700ea404cc24ca6fa1d7ba90cbf8bcc1e84840420f000000000017a9142276c6ed7cb46150a59a046aa1899b85841a7ba18702483045022100e7eda8dceb2395d1332328d53557e140d60aa766c6ffa4f5247cf53e51e13cca0220183ab1636841b4e0aa8685a4cd2e7b8468977de473920b7596c65914a1ee847101210279dfe94e011081a13bb989b82d0cc7c71af9ec14677e9aaf7cdbe408ab1b154e00000000"
        }
    ]
}

Closing as duplicate of https://github.com/lightningnetwork/lnd/pull/1933


Update README.md

Chore: Added JavaScript Challenger Interview HandBook inside guide and resource section .
Contributing
If you want to add a project to this list, please make sure that:

[✅] You read the contributing guide
[ ✅] The repository has hacktoberfest as topic and counts for hacktoberfest event
[ ✅] The project can't be just an "add your name" or simply + 1 contribution to hacktoberfest
[✅ ] Place them in alphabetical order
[ ✅] One repository per PR/contribution - avoid conflicts and simplify review
[ ✅] Your pull request is not spammy just adding an empty line, otherwise it will be marked as invalid and not count to hacktoberfest.

If they meet the requirements above, feel free to create a PR. Happy Hacking! :sparkles:

@OtacilioN could you please add hacktoberfest accepted label on it


Angular 9 support

Not support angular 9

install rxjs-compat error will go.

ERROR in The target entry-point "ng2-tree" has missing dependencies:

uuid/v4

Now meet this error.

install uuid@3

Resolved all the errors, but I get a warning
Warning: Entry point 'ng2-tree' contains deep imports into
'project_folder/node_modules/rxjs/Observable',
'project_folder/node_modules/uuid/v4',
'project_folder/node_modules/rxjs/Subject',
'project_folder/node_modules/rxjs/add/operator/filter',
'project_folder/node_modules/rxjs/add/observable/of',
'project_folder/node_modules/rxjs/add/operator/merge'.
This is probably not a problem but may cause the compilation of entry points to be out of order.


how can i get to settings?

how can i change my settings i go change them in Settings.xml to

true
false
true
true
MyMacro.xml

but they dont change in the actual app
what am i doing wrong?
im using the version below

i got the answer its at
PS4Macro_cf7ce2c.zip

PS4Macro_cf7ce2c.zip

create a settings.xml file in your PS4Macro folder, open it in Editor, then write something like this (all possible settings can be obtained from the documentation):

false
false
true
true

Create a settings.xml file in your PS4Macro folder, then change it in Editor. I attached mine.
settings.zip

Hello Morty2323
I saw that you are really active with ps4 macros. I try to learn some things. Maybe you have a second for me. I would be really happy. My email is<EMAIL_ADDRESS>Cheers


response options ignored

When setting
response: {
        modify: true,
        options: {
          stripUnknown: true,
          presence: 'required'
        }
      },

all values are optional anyway.

Whats your expected behavior - may just add a code example? I'm still in vacation-mode ;-)

Hey ;) No worries, there's no code to show to be fair. When presence: required I expect hapi-swaggered to respect that settings. Currently, they are always marked as optional.


Unhealthy nodes

I am trying to start a cluster locally but i have this pb where my nodes are  unhealthy as shown below:

i run mini docker doctor

Any help pls ?

Hi bnping
1st) did you do what was suggested in the warning? Add: 'systemd.legacy_systemd_cgroup_controller=yes' as a boot parameter in '/etc/default/grub'. This will remove the warning. On your 'unhealthy cluster' issue:
Same appeared to me, but it is not the complete cluster it is two out of 51 processes, on each cluster, also on the master:
It is either the:
DC/OS Calico Node (felix) (Unhealthy)
or:
DC/OS Poststart Checks (Unhealthy)
Reason: ? (donno)
May it same/other process on your cluster?


x/playground: firing "load" event too early

What version of Go are you using (go version)?
go1.19.2
Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
Just the web playground
What did you do?
Open Google Chrome
Open the DevTools panel, on the tab Networks
Load the permalink of a playground program e.g. https://go.dev/play/p/ejOfDs_Hg9
Filter the network tab on the snippet ID: ejOfDs_Hg9
What did you expect to see?
The red vertical line (load event) should be after the snippet source code request has finished loading, in the waterfall
What did you see instead?
The red vertical line (load event) is before the snippet source code request, in the waterfall

This is a nit, not a serious bug!
Currently, opening a given program's playground permalink loads the page layout HTML, then the JS, then the actual main content which is the program source code. We may want to honor the doc of the load event: "is fired when the whole page has loaded, including all dependent resources".

For context: I stumbled on this when trying to scrap source code and screenshots of code that I stored in various playgrounds, from their permalinks. When load is fired, the source code area is still empty.

For the Go playground specifically, an easy workaround for me (instead of using a headless browser such as chromedp) is to extract the snippet ID from the URL e.g. https://go.dev/play/p/ejOfDs_Hg9 -> ejOfDs_Hg9, and then fetch the raw response of the "share" request e.g. https://go.dev/_/share?id=ejOfDs_Hg9

The same content is available by appending .go to the play url, eg https://go.dev/play/p/ejOfDs_Hg9.go

That's amazing, thanks for the tip!


added new data seeds

Substitute this line for a meaningful title for your changes
Overview
Please write a description. If the PR is hard to understand, provide a quick explanation of the code.
Designs
Link to the related design prototypes (if applicable)
Testing instructions
Please explain how to test the PR: ID of a dataset, steps to reach the feature, etc.
Feature relevant tickets
Link to the related task manager tickets

Checklist before submitting

[ ] Meaningful commits and code rebased on develop.
[ ] If this PR adds feature that should be tested for regressions when
deploying to staging/production, please add brief testing instructions
to the deploy checklist (docs/deployment-checklist.md)
[ ] Update CHANGELOG file

Fixed @kgajowy;
but bear this in mind: We need to modify how the test for scenarios are done; They rely on having data linked with scenarios that are removed from being manually set on the seeds. We need to update the full flow of setting up a project --> scenario --> wdpa selection --> feature recipe + feature calc step in api/apps/api/test/scenario-features/ (a separate task from this)

@aagm

given the exit code 2 as a e2e specs results and still green light (cc @hotzevzl ?) , not sure if we can trust the "all good" from CI. Can we fix it?

@aagm
given the exit code 2 as a e2e specs results and still green light (cc @hotzevzl ?) , not sure if we can trust the "all good" from CI. Can we fix it?

tl;dr ok to merge this despite the flaky false positives, from my point of view.
fix and postmortem on their way, but tl;dr of that: from what I have seen while trying to track this issue down, what causes CI to report a failure is the non-zero exit code for one of the make recipes (test-start-services), caused by a failed migration run. The effects caused by the migrations will have happened, however (as the root cause is that a CI setup error causes a duplicated attempt to run migrations), and tests can still pass (bar any failing ones for unrelated reasons).
So when CI says we're green, tests were succeeding and the issue we're looking at did not trigger - in which case things look fine to me. We do have false positives, however, when tests pass but the issue above triggers, but at least in local e2e test runs the fix I prepared yesterday fixes the issue - but I will need to verify in the actual CI runners.


Install libcap2-bin into base image

Install the libcap2-bin package into the base image to manage Linux capabilities.

@howardjohn this will be needed to simplify https://github.com/istio/istio/pull/20380. Thanks!

bump https://github.com/istio/istio/blob/dca5957a510ad1cd11cb2a003a46e7eea29c632d/Makefile.core.mk#L25 to 1.6-dev.1

@rlenglet: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-istioio-k8s-tests_istio
0bf1651537851de2b056a90c5c43efdf0c5da0c6
link
/test integ-istioio-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Closing, as this was integrated into https://github.com/istio/istio/pull/20380.


Check SURFER app container

Please check if the Dockerfile and Makefile in /surfer are written according to your requirements.

Now everything should be even better :)


Use prettier for the whole project

Description of the PR
The PR enables prettier for the whole project to make it possible to do PR/changes comparison confidently.
Type of change

[x] Technical
[ ] Feature
[ ] Documentation
[ ] Bugfix

Screenshots
n/a
Issues to clarify before merge

n/a

Removing prettier in favor of EditorConfig already setup for this project


chore(mergeall-perf): fix mergeall micro perf benchmarks

mergeAll operator micro perf benchmarks were incorrect, and in favor of RxJS5.
Using mapTo is error-prone in these kind of benchmarks. I just replaced them by simple maps.

@jinrih how did the previous test setup favor RxJS5? My concern here is now we can't compare to previous runs, because calling the map selector each time to create the inner Observable is significantly slower than mapTo, so now we're testing more than just mergeAll performance.
Perhaps a better test (if we don't want to use map/mapTo at all) would be:
Observable.of(
  Observable.range(0, 25),
  Observable.range(0, 25),
  Observable.range(0, 25),
  ...
).mergeAll();

@trxcllnt I think I see what you mean. I updated the benchmarks to measure only mergeAll instead of map(To) + mergeAll operators.

Thanks @jinroh ... merged with f9e92df


Update DG with manual testing for Edit

Codecov Report

Merging #205 (6213dec) into master (d14116c) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #205   +/-   ##
=========================================
  Coverage     76.47%   76.47%
  Complexity      658      658
=========================================
  Files            92       92
  Lines          2104     2104
  Branches        273      273
=========================================
  Hits           1609     1609
  Misses          425      425
  Partials         70       70

Continue to review full report at Codecov.

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


Regression: PyUnicodeUCS4_AsUTF8String on 0.11.0rc0 to 0.11.0rc2

NOTE: Only file GitHub issues for bugs and feature requests.  All other topics will be closed.
For general support from the community, see StackOverflow.
To make bugs and feature requests more easy to find and organize, we close issues that are deemed
out of scope for GitHub Issues and point people to StackOverflow.
For bugs or installation issues, please provide the following information.
The more information you provide, the more easily we will be able to offer
help and advice.
What related GitHub issues or StackOverflow threads have you found by searching the web for your problem?
http://stackoverflow.com/questions/33795982/undefined-symbol-pyunicodeucs4-fromstringandsize-with-tensorflow-on-heroku
Environment info
Operating System:
Heroku
Installed version of CUDA and cuDNN:
(please attach the output of ls -l /path/to/cuda/lib/libcud*):
If installed from binary pip package, provide:

A link to the pip package you installed: https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.11.0rc2-cp27-none-linux_x86_64.whl
The output from python -c "import tensorflow; print(tensorflow.__version__)".

If installed from source, provide

The commit hash (git rev-parse HEAD)
The output of bazel version

If possible, provide a minimal reproducible example (We usually don't have time to read hundreds of lines of your code)
What other attempted solutions have you tried?
Confirmed working on https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.10.0-cp27-none-linux_x86_64.whl
Logs or other output that would be helpful
(If logs are large, please upload as attachment or provide link).
Nov 01 15:05:13 i23d-staging app/worker.1:      import tensorflow as tf
Nov 01 15:05:13 i23d-staging app/worker.1:    File "/app/.heroku/python/lib/python2.7/site-packages/tensorflow/__init__.py", line 23, in <module>
Nov 01 15:05:13 i23d-staging app/worker.1:      from tensorflow.python import *
Nov 01 15:05:13 i23d-staging app/worker.1:    File "/app/.heroku/python/lib/python2.7/site-packages/tensorflow/python/__init__.py", line 49, in <module>
Nov 01 15:05:13 i23d-staging app/worker.1:      from tensorflow.python import pywrap_tensorflow
Nov 01 15:05:13 i23d-staging app/worker.1:    File "/app/.heroku/python/lib/python2.7/site-packages/tensorflow/python/pywrap_tensorflow.py", line 28, in <module>
Nov 01 15:05:13 i23d-staging app/worker.1:      _pywrap_tensorflow = swig_import_helper()
Nov 01 15:05:13 i23d-staging app/worker.1:    File "/app/.heroku/python/lib/python2.7/site-packages/tensorflow/python/pywrap_tensorflow.py", line 24, in swig_import_helper
Nov 01 15:05:13 i23d-staging app/worker.1:      _mod = imp.load_module('_pywrap_tensorflow', fp, pathname, description)
Nov 01 15:05:13 i23d-staging app/worker.1:  ImportError: /app/.heroku/python/lib/python2.7/site-packages/tensorflow/python/_pywrap_tensorflow.so: undefined symbol: PyUnicodeUCS4_AsUTF8String

Just to be clear, how is this reproduced? Just importing tensorflow as
import tensorflow as tf

causes the problem?  This only occurs on Heroku? What version of Python?

@aselle Yeah. So far the target platform I tested was only heroku. The python version is 2.7.10.

+1 on Centos 7. Python 2.7.12
$ python
Python 2.7.12 (default, Aug 31 2016, 14:30:10)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.

import tensorflow as tf
Traceback (most recent call last):
File "", line 1, in
File "/usr/local/python-2.7.12/lib/python2.7/site-packages/tensorflow/init.py", line 23, in
from tensorflow.python import *
File "/usr/local/python-2.7.12/lib/python2.7/site-packages/tensorflow/python/init.py", line 49, in
from tensorflow.python import pywrap_tensorflow
File "/usr/local/python-2.7.12/lib/python2.7/site-packages/tensorflow/python/pywrap_tensorflow.py", line 28, in
_pywrap_tensorflow = swig_import_helper()
File "/usr/local/python-2.7.12/lib/python2.7/site-packages/tensorflow/python/pywrap_tensorflow.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow', fp, pathname, description)
ImportError: /usr/local/python-2.7.12/lib/python2.7/site-packages/tensorflow/python/_pywrap_tensorflow.so: undefined symbol: PyUnicodeUCS4_AsUTF8String

Could you try the nightly build and also other older versions and see if we can narrow it down to just that build?
It looks like your version of Python does not have UCS4 unicode checked in, see e.g.
https://groups.google.com/forum/#!topic/comp.lang.python/9dThp1h3TMM
Can you do?
>>> import sys
>>> print sys.maxunicode

and see what it returns (see e.g. http://stackoverflow.com/questions/1446347/how-to-find-out-if-python-is-compiled-with-ucs-2-or-ucs-4)

It looks like sys.maxunicode == 65535, which I would guess is UCS2.
I did try back to 0.11.0rc0 and saw the same issue. We've been running with a custom-compiled version, since we needed CUDA 8 support.
It's a little difficult to try a custom version without disrupting others' work, but I can try--we're running TF pretty much 24/7 now.

I believe in general it is unlikely that our binary which is designed to work on Ubuntu will work on CentOS 7, because the build options on Python are possibly different between the two. Thus, on CentOS, you might need to use a custom built version. It appears CentOS7 and Ubuntu use different unicode options... @gunan might know better.  You could probably build a custom python just for tensorflow if you want to use the Ubuntu binary, but that might just be asking for trouble.

We never tested our binary with CentOS, therefore the distributed pip package has no guarantees.
As @aselle suggested, rebuilding from source, or using docker images on CentOS should work for you.
Not sure about heroku platform. Again, it is never tested.
Therefore no guarantees on it.

@gunan @aselle Heroku also returns 65535. For us it's not a big deal and we already switched to EC2. But it does look like a regression since 0.10.0rc0 works.

A quick google search showed that heroku instances are built on top of ubuntu 14.04.
Using docker, I tried the following:
$ docker run -it ubuntu:14.04 bash
$ apt-get update
$ apt-get install python python-dev python-pip -y
$ pip install https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.11.0rc2-cp27-none-linux_x86_64.whl
$ python -c "import tensorflow; print(tensorflow.version)"
Which results in:
0.11.0rc2
Looks like in the stackoverflow question @mrry was able to root cause the problem and provide a solution for the platform in question.
However, since we do not have official support for this platform, and issue does not affect ubuntu version we are supporting, and the one before that, I will close this issue.
I am really sorry for the inconvenience, but looks like the solution for heroku and centOS is to build the pip package from sources.


Fetching spark-stemming from Maven

Maven doesn't seem to be able to fetch spark-stemming from the repository when adding the script
<dependency>     <groupId>master</groupId>     <artifactId>spark-stemming_2.10</artifactId>     <version>0.1.2</version> </dependency>
to the Pom file.
It returns an error that the dependencies could not be resolved

Should be fixed in 0.2.0


HTML

HTML
User Story
As a bootcamp student
I want the prework note to be structured on a webpage
so that I can eastly find and read information
Acceptance Criteria
GIVEN a Prework Study Guide website
WHEN I visit the website in my browser
THEN I see four boxes titled HTML, CSS, Git, and JavaScript with associated note listed

Issue has been corrected. and 4 boxes have been added.


Add Disengage on Gas Toggle

Adding the community-requested toggle. This toggle allows users to turn on or turn off disengage openpilot on gas press.

Won't work. You have to set the unsafe mode in panda.

CI is failing. You have bugs.

May I suggest a better icon
https://github.com/krkeegan/openpilot/blob/a4c621103a0f3fd17f5f0fe4f4f27be098557b4e/selfdrive/assets/offroad/icon_gas.png

Process replay is failing since the param is not set. You want to set the param here as well: https://github.com/commaai/openpilot/blob/master/selfdrive/test/process_replay/process_replay.py#L349

Also, gas is not the ISO term and is a bit confusing if you are driving a Tesla or some other EV. The proper term is accelerator

Also, gas is not the ISO term and is a bit confusing if you are driving a Tesla or some other EV. The proper term is accelerator

I agree, gas is a very ambiguous term in this scenario.

Just wanted to mention the issue counterpart: #23588

Can't push any more (due to LFS?), re-opening here: https://github.com/commaai/openpilot/pull/23977


Undersampled Image Reconstruction using operators

I am generating k-space data using the Ellipses phantom and performing direct reconstruction to obtain a fully sampled image, which serves as the ground truth from which I want to retrospectively simulate k-space data.
To do that, I split the k-space data to create a direct_reconstruction object from the undersampled k-space data.
I then create an acquisition operator to retrospectively generate the k-space data from the ground-truth image.
The image reconstructed from this undersampled data (xu) should ideally match the direct reconstruction of the undersampled data (x_us). More precisely, they should also match the ground-truth image in terms of their overall identity, such that when I compute the point-wise error images, only artefacts are left.
The problem is that while x_us matches the fully sampled ground truth (x_fullsamp) and looks correct, xu isn't. The issue persists despite using the density compensation function and Fourier transform from the direct reconstruction.
This is a code that you can try  :
# %% NOT IMPORTANT Import and data

import mrpro
from mrpro.data import SpatialDimension
import numpy as np
import torch
import torch.nn.functional as F
import matplotlib.pyplot as plt
from mrpro.algorithms.reconstruction.DirectReconstruction import DirectReconstruction
from mrpro.data._kdata.KData import KData
from mrpro.data.KTrajectory import KTrajectory
from mrpro.data.traj_calculators.KTrajectoryPulseq import KTrajectoryPulseq
from mrpro.operators.FourierOp import FourierOp
from mrpro.phantoms.EllipsePhantom import EllipsePhantom
from mrpro.phantoms.phantom_elements import EllipseParameters
from mrpro.operators.DensityCompensationOp import DensityCompensationOp

base_path = '/home/global/mrpro_issue381/'
h5_path = base_path + 'pulseq_spiral_2D_220k0_128interleaves_golden_angle_vds_with_traj.h5'
seq_path = base_path + '20240319_spiral_2D_256mm_220k0_128interleaves_golden_angle_vds.seq'

def shift_k_space_trajectory(kdatapuls: KData) -> KData:

    # Extract k-space trajectory
    ky_pulseq = kdatapuls.traj.ky
    kx_pulseq = kdatapuls.traj.kx
    kz_pulseq = kdatapuls.traj.kz

    # Number of indices and initilisation
    num_indices = ky_pulseq.shape[2]
    shifted_ky = ky_pulseq.clone()
    shifted_kx = kx_pulseq.clone()

    for i in range(num_indices - 1):
        shifted_ky[:, :, i, :] -= ky_pulseq[:, :, i, 0]
        shifted_kx[:, :, i, :] -= kx_pulseq[:, :, i, 0]

    shifted_traj = KTrajectory(kx=shifted_kx, ky=shifted_ky, kz=kz_pulseq)
    shifted_kdatapuls = KData(data=kdatapuls.data, traj=shifted_traj, header=kdatapuls.header)

    return shifted_kdatapuls

kdatapuls = KData.from_file(h5_path, KTrajectoryPulseq(seq_path=seq_path))
shifted_kdatapuls = shift_k_space_trajectory(kdatapuls)

shifted_kdatapuls.header.recon_matrix.x = 256
shifted_kdatapuls.header.recon_matrix.y = 256

# %% NOT IMPORTANT generate_random_ellipses

def generate_random_ellipses(num_ellipses):
    ellipses = []
    for _ in range(num_ellipses):
        # Generate radius first to use it for constraining center coordinates
        radius_x = np.random.uniform(0.05, 0.4)
        radius_y = np.random.uniform(0.05, 0.4)

        # Calculate bounds to keep the ellipse within
        min_center_x = -0.4 + radius_x
        max_center_x = 0.4 - radius_x
        min_center_y = -0.4 + radius_y
        max_center_y = 0.4 - radius_y

        center_x = np.random.uniform(min_center_x, max_center_x)
        center_y = np.random.uniform(min_center_y, max_center_y)

        intensity = np.random.uniform(1, 50)
        ellipses.append(EllipseParameters(center_x, center_y, radius_x, radius_y, intensity))

    return ellipses

# %% Look here
ellipses = generate_random_ellipses(8)
phantom = EllipsePhantom(ellipses)
kspace_data = phantom.kspace(shifted_kdatapuls.traj.ky, shifted_kdatapuls.traj.kx)

kdata_object = KData(
    data=kspace_data.unsqueeze(0), header=shifted_kdatapuls.header, traj=shifted_kdatapuls.traj
)

kdata_object_us = KData.split_k1_into_other(kdata_object, torch.arange(0, 128, 4)[None, :], other_label='repetition')

direct_reconstruction_fullsamp = DirectReconstruction.from_kdata(kdata_object)
x_fullsamp = direct_reconstruction_fullsamp(kdata_object)

direct_reconstruction_us = DirectReconstruction.from_kdata(kdata_object_us)
x_us = direct_reconstruction_us(kdata_object_us)

fourier_operator = mrpro.operators.FourierOp.from_kdata(kdata=kdata_object_us)
dcf_operator = DensityCompensationOp(torch.sqrt(direct_reconstruction_us.dcf.data))
acquisition_operator = dcf_operator @ fourier_operator

kdata = acquisition_operator(x_fullsamp.data)[0]
(xu,) = acquisition_operator.H(kdata)

I put the necessary data to run the code on the reco-cluster and adapted the base_path in the code to be able to load the data.

Csm?

Nope when you add the csm the real values of xu reaches 300 where x_us is around 2 and :
xu.abs().min() = tensor(252.2883)                    xu.abs().max() =tensor(458.5218)
x_us.data.abs().min() = tensor(0.0196)              x_us.data.abs().max() = tensor(94.3660)
'''ellipses = generate_random_ellipses(8)
phantom = EllipsePhantom(ellipses)
kspace_data = phantom.kspace(shifted_kdatapuls.traj.ky, shifted_kdatapuls.traj.kx)
kdata_object = KData(
data=kspace_data.unsqueeze(0), header=shifted_kdatapuls.header, traj=shifted_kdatapuls.traj
)
kdata_object_us = KData.split_k1_into_other(kdata_object, torch.arange(0, 128, 4)[None, :], other_label='repetition')
direct_reconstruction_fullsamp = DirectReconstruction.from_kdata(kdata_object)
x_fullsamp = direct_reconstruction_fullsamp(kdata_object)
direct_reconstruction_us = DirectReconstruction.from_kdata(kdata_object_us)
x_us = direct_reconstruction_us(kdata_object_us)
dcf_operator = DensityCompensationOp(torch.sqrt(direct_reconstruction_us.dcf.data))
fourier_operator = mrpro.operators.FourierOp.from_kdata(kdata_object_us)
img_coilwise = mrpro.data.IData.from_tensor_and_kheader(*fourier_operator.H(*dcf_operator(kdata_object_us.data)), kdata_object_us.header)
csm_operator = mrpro.data.CsmData.from_idata_walsh(img_coilwise).as_operator()
acquisition_operator = fourier_operator @ csm_operator
kdata = acquisition_operator(x_fullsamp.data)[0]
(xu,) = acquisition_operator.H(kdata)
''''

I have tried now out the following as well.

ellipses = generate_random_ellipses(8)
phantom = EllipsePhantom(ellipses)
kspace_data = phantom.kspace(shifted_kdatapuls.traj.ky, shifted_kdatapuls.traj.kx)

kdata_object = KData(data=kspace_data.unsqueeze(0), header=shifted_kdatapuls.header, traj=shifted_kdatapuls.traj)

kdata_object_us = KData.split_k1_into_other(kdata_object, torch.arange(0, 128, 16)[None, :], other_label='repetition')

direct_reconstruction_fullsamp = DirectReconstruction.from_kdata(kdata_object)
x_fullsamp = direct_reconstruction_fullsamp(kdata_object).data

direct_reconstruction_us = DirectReconstruction.from_kdata(kdata_object_us)
x_us = direct_reconstruction_us(kdata_object_us).data

fourier_operator = mrpro.operators.FourierOp.from_kdata(kdata=kdata_object_us)
# dcf_operator = DensityCompensationOp(direct_reconstruction_us.dcf.data)  # BEFORE
dcf_operator_W12 = DensityCompensationOp(2 * torch.sqrt(direct_reconstruction_us.dcf.data))  # CORRECTED
dcf_operator = DensityCompensationOp(4 * direct_reconstruction_us.dcf.data)  # CORRECTED

(kdata,) = fourier_operator(x_fullsamp.data)
(xu_v1,) = fourier_operator.H(dcf_operator(kdata)[0])

acquisition_operator = dcf_operator_W12 @ fourier_operator
(kdata_dcf,) = acquisition_operator(x_fullsamp.data)
(xu_v2,) = acquisition_operator.H(kdata_dcf)

arrs = [xu_v1, xu_v2, x_us, x_fullsamp]
errs = [arr - x_fullsamp for arr in arrs]
titles = [
    'retrospecively\n undersampled with y=Ax, A:=F; \n x0 = A^H W y',
    'retrospecively\n undersampled with y=Ax, A:=W^(1/2)F; \n x0 = A^H W^(1/2) y',
    'direct recon from\n split data',
    'ground-truth',
]
single_fig_size = 5
figsize = (len(arrs) * single_fig_size / 2, single_fig_size)
fig, ax = plt.subplots(2, len(arrs), figsize=figsize)
clim = [0, 75]
for k, (arr, err, title) in enumerate(zip(arrs, errs, titles)):
    ax[0, k].set_title(title, fontsize=7)
    ax[0, k].imshow(arr[0, 0, 0, ...].abs(), clim=clim, cmap=plt.cm.Greys_r)
    ax[1, k].imshow(err[0, 0, 0, ...].abs(), clim=clim)

plt.setp(ax, xticks=[], yticks=[])

This shows more in detail that apparently, what we are getting back from the direct_reconstruction, seems to correspond to a W' that we want to interpret as a W' = (W^(1/2))^H W^(1/2) with W^(1/2) = 2 * (W')^(1/2)  for setting up a problem by min_x 1/2 * ||W^(1/2) (Ax - y) ||_2^2.
Maybe it would be worth noting this down in the documentation somewhere.

Could the problem be in this line
(kdata,) = fourier_operator(x_fullsamp.data)
and how this fourier_operator is defined?
If I e.g. change the nufft_oversampling from 2 (default) to 1, the scaling between x_u and x_us is reduced from 4 to 2. If I also change the recon_matrix to fit the encoding_matrix along the readout direction then it is further reduced but not yet 1.
Seems to me that we would need to simulate the acquisition in a way such that we do not get any additional scaling of the nufft just because we have different matrix sizes.

nufft_oversampling changes return values?


Call 'global_exists' in place of 'get_modpath' for 'intllib' check

Better practice in my opinion.

this file is from the actual intllib mod itself, the change lies with them as it is updated and authors simply copy that one .lua file into their mod folder.


Can't build Metaboss

Unable to build Metaboss after many many attempts.
Can you assist @samuelvanderwaal
Already have edited the cargo.toml to state "anchor-lang = "0.24.2" with no luck
error: failed to select a version for the requirement anchor-lang = "^0.19.0"
candidate versions found which didn't match: 0.24.2
location searched: crates.io index
required by package mpl-candy-machine v2.0.1
... which satisfies dependency mpl-candy-machine = "^2.0.1" of package `metaboss v0.7.0

Ended up figuring it out.
Instead of trying to build from source which was not working, I just ran "cargo install metaboss"


Fix: Invalidate cache at logout

Invalidates the account cache when the /logout endpoint is called.
Note
This depends on https://github.com/stormpath/stormpath-sdk-node/pull/407 in order to function. So the Node SDK need to cut a new release with that PR before we can release this.
How to verify
Run the steps of this PR. It will use this branch and verify the behaviour.
Fixes #278.

+1, looks great!

Merging this since this PR has been merged.


Update npm package for Alfred 4

Recently just updated Alfred for its version 4 release. When I tried npm install it failed - it looks like the preferences path is different with the new release

Same with you.
{ Error: Command failed: alfred-link
Error: Alfred preferences not found at location /Users/yuan/Library/Preferences/com.runningwithcrayons.Alfred-Preferences-3.plist
    at pathExists.then.exists (/usr/local/lib/node_modules/alfred-vscode/node_modules/resolve-alfred-prefs/index.js:15:10)

    at makeError (/usr/local/lib/node_modules/alfred-vscode/node_modules/execa/index.js:174:9)
    at Promise.all.then.arr (/usr/local/lib/node_modules/alfred-vscode/node_modules/execa/index.js:278:16)
    at process._tickCallback (internal/process/next_tick.js:68:7)
  code: 1,
  stdout: '',
  stderr:
   'Error: Alfred preferences not found at location /Users/yuan/Library/Preferences/com.runningwithcrayons.Alfred-Preferences-3.plist\n    at pathExists.then.exists (/usr/local/lib/node_modules/alfred-vscode/node_modules/resolve-alfred-prefs/index.js:15:10)\n',
  failed: true,
  signal: null,
  cmd: 'alfred-link',
  timedOut: false,
  killed: false }

This is an issue with a dependency.
https://github.com/sindresorhus/alfy/issues/110

Now Alfy supports Alfred 4, alfred-link has been released a patch update to add support for Alfred 4. Just update your dependencies to get it to work. 😄


Multi cursor key

Ctrl key should insert multiple cursors on click instead of alt
Atom Keymap: 1.2.2
VS Code: 1.7.2
OS: Linux / Fedora 22

Top item on our list right now.
https://github.com/Microsoft/vscode/issues/3776

Now possible: https://code.visualstudio.com/updates/v1_13#_add-multiple-cursors-with-ctrl-cmd-click


Disallow faction reputation in Journal schema

Also "ActiveFine" and "Wanted" from the "Docked" event

Also "HappiestSystem", "HomeSystem" and "SquadronFaction" from the FSDJump & Location events.


Create the completions directory for fish before copying files

Without this, the integrate command fails if the user did not
already create the directory

Thanks for the bugfix!


Add a Github action to clean up stale PRs

Summary
For any PRs that have been open without new activity (e.g. comments, commits) for more than 30 days, we want to mark the PR as stale. After the PR has been marked as stale for more than 1 week without new activity (e.g. comments, commits), it automatically close the PR.
Read Github Action stale action for more information.

Fixed with #37