fix: support for array-includes-any and in queries

Initial support for ✨new ✨ queries: in and array-contains-any announced on Nov 7
@wovalle
TODO:

[ ] Documentation
[ ] Integration tests

Thanks for the contribution! I have a few observations:

I don't quite understand Filter<IFirestoreVal, any[]>. This is supposed to filter all the arrays from IFirestoreVal so it only accepts strings and numbers? Can you filter dates or geopoints with the new operators?
This requires integration tests
Some documentation must be written

I can do the last two but I've been pretty busy because I'm moving, I might have some time next week

@wovalle The Filter is there to say you can only call this fn with a subset of the common query values - those that extend array. From the documentation in firestore, it looks like both array-contains-any and in can accept string[], number[], and Boolean[]. The last of which I left off the list because it's kinda weird and I'm not sure what value it adds (if [true] includes someBoolean?)
I can write a integration test for this and update the docs this weekend if you don't get to it first. I can't run the integration tests in CI, but I can set them up locally.

Makes a lot of sense @zhirschtritt, today I'll write the integration test if you don't beat me to it :)

@wovalle thanks! sorry I didn't get a chance this weekend. I forgot to push a change that actually implements these queries on the AbstractFirestoreRepository class, but that'll need to be there for integration tests. should just be a copy pasta

Other things I've been thinking about:
From the docs:

Cloud Firestore provides limited support for logical OR queries. The in and array-contains-any operators support a logical OR of up to 10 equality (==) or array-contains conditions on a single field. For other cases, create a separate query for each OR condition and merge the query results in your app.

Should it be fireorm's responsibility or would it be helpful if we threw a runtime error if the user broke this rule? The base firestore node lib does not, but the jsdocs on the methods do explicitly state the 10 limit. I would like fireorm to throw rather then read some error returned from firebase, but if they ever up the limit that would need a pr from us.
Also, the supported operators for array-contains-any and in are restricted to <, <=, ==, >, >=, which we need to apply another Filter to the props, or update the types in some other clever way 🤷♂

I wouldn't put it in fireorm because that might change at any time and I suppose firestore drivers should have that into consideration 🤔
I didn't get the supported operators comment

@here Hey guys, just wondering whether this change will get merged in?

@Way2nnadi Needs to merge upstream and add tests, I'll try to devote some time to it this weekend

Any update on this?

Closes #171

This was already done in #178


Skipping symbol substitution cilium_egress_v4

Reported by mikek on Slack:
level=warning msg="Skipping symbol substitution" subsys=elf symbol=cilium_egress_v4

We need to add cilium_egress_v4 to ignoredELFPrefixes.

I would like to work on this issue.

@Divya063 Chris assigned you. Don't hesitate to reach out on Slack (#development or #sig-datapath) if you have questions.

Sure @pchaigno


Store use session in Redis.

User sessions should be stored in Redis. This change has the following effect:

Web frontend for sign-in, sign up and check user session
Backend with DartFrog
Docker compose file

i want to do the frontend part . please assign it to me.

i want to do the frontend part . please assign it to me.

Please fork a project and pull request with the feature branch.


Attempted import error: 'NotificationTray' is not exported from 'tabler-react'.

Trying to use NotificationTray component and throws this error

@12jm have you tried importing Notification.Tray?
Its export reflects the hierarchy of the components, since NotificationTray is a child of the Notification component it can only be imported as Notification.Tray

Thanks @GregoryHamel. It worked!
Importing this way:

Import { Notification } from "tabler-react"

and used in this way:
        <Notfication.Tray
             ...
         />

Instead of :
       <NotficationTray
             ...
       />


Y24-027 [BUG] Create child LTN Al Lib Dil plate from LTN Al Lib plate for targeted nanoseq in Production (data fix)

Describe the bug
As Sara W we have an LTN Al Lib plate for Targeted NanoSeq that cannot progress due to an error with the file upload. We would like an LTN AL Lib Dil child plate created from that LTN Al Lib plate so we can progress.
RT Ticket Number
NA
To Reproduce
Steps to reproduce the behaviour:

Go to the LTN Al Lib plate and click the button to create the child LTN Al Lib Dil plate
Upload a file with unusual characters in the hyb panel column
See a 500 server error with a background exception email for 'malformed UTF-8'
Note that child plate has been created anyway but binning is incorrectly done (user cancels it)
Note that partial poly-metadata for the requests for the plate has been created
Note that further attempts at creating LTN Al Lib Dil plates now fail as metadata with the same keys already exists for the requests in those wells (code only allows inserts of fresh keys and fails with duplicate errors)

Expected behaviour
In this case we would have liked the file parsing to pick up the unusual characters in the file and reported that to the user at file upload before a child plate is made.
We would have liked the error the user saw to be informative rather than a generic 500 error.
We would like to be able to create more than one child plate from the LTN Al Lib plate but cannot.
Screenshots
NA
Additional context
This ticket is to fix the immediate problem with the data to allow this plate to continue and unblock the users.
We will not fix any code in this story.
See original plate file (attached) with the unusual hyphen character in the hyb panel column of the last 8 wells (text is Twist exome - humgen).
SQPP-47490-J_AL Lib Dilution volumes_120324.csv

How this data issue was fixed
Testing locally by running the integration suite to the AL Lib plate and using the file above and breakpoints in the code we identified the character that was causing the problem.
Created a new version of that file without the dodgy character.
Second problem is the code doesn't currently cope with creating the same metadata keys more than once on the same requests, so you cannot make a second child from the AL Lib plate. So we deleted the existing metadata on those requests. Then we can create a new child LTN Al Lib Dil plate in Limber, uploading the fixed file.
Steps:

create copy of their original file with standard hyphen characters
check in Production Sequencescape database that can select the partially inserted metadata for the requests in this submission and that metadata matches to their plate values from the file (not present after the first instance of the unusual character)
delete that existing metadata and check all child plates are 'cancelled'
create a new LTN Al Lib Dil plate using the modified file
check the new metadata looks correct and is complete, including hyb panel values for the wells of interest
email the users to update

SQL queries to identify and delete the metadata:
SELECT pm.*
FROM poly_metadata pm, submissions s
JOIN requests r ON r.submission_id = s.id
WHERE pm.metadatable_id = r.id
AND s.id = **submission_id**
;

DELETE
FROM poly_metadata
WHERE poly_metadata.metadatable_id IN(
  SELECT r.id
    FROM submissions s
    JOIN requests r ON r.submission_id = s.id
    WHERE s.id =  **submission_id**
);

NB. They will still NOT be able to make additional LTN Al Lib Dil plates from the same AL Lib plate without a fix to the code that creates the metadata records, to allow for updates.
NB. This does NOT prevent further attempts to upload unusual characters in customer files.

Also, you can find the existing metadata by searching on the poly_metadata table for key 'original_plate_barcode' with value of the LTN AL Lib barcode to get all the metadatable ids that you need to remove (9 rows per metadatable id).


example: add complete federation v2 example

This adds a complete working example of federation v2.

@TriPSs can I get some help here? I don't have a lot of experience with nx, and I don't understand why the e2e tests are failing with yarn nx e2e examples but passing with pnpm run test:e2e --testPathPattern=PATH_TO_FEDERATION_2_EXAMPLE. Also, I'm seeing test failures in the examples I didn't even touch.

If I look at the CI that is failing I see that it all tests from "Federated" with the error:
    GraphQLSchemaValidationError: Unknown directive "@link".

So after close inspection of the error logs (running locally), I see that the failing tests are from some other examples:
pnpm run test:e2e --testPathPattern=/Users/meekdenzo/projects/open-source/nestjs-query/examples/federation-2

pnpm nx e2e examples

Can you please run the tests from your end and confirm if there are issues in the other examples?

So far I have identified:

Error: No AuthorizationContext available for method failingTodoItems! Make sure that you provide an AuthorizationContext to your custom methods as argument of the @AuthorizerFilter decorator.

and

Error: Unable to find todoItem to set on SubTaskEntity

from
pnpm run test:e2e --testPathPattern=/Users/meekdenzo/projects/open-source/nestjs-query/examples/auth

If I look at the CI that is failing I see that it all tests from "Federated" with the error:
    GraphQLSchemaValidationError: Unknown directive "@link".

I think this is because of the @apollo/subgraph dep. I see we don't have it in the current package.json. I wonder why this isn't the case locally

Thanks for the PR, checkout the issues and fixed them with #189.


Large error on expectation value even with zero noise fake backends V2

If I use V2 fake backends, I can set a certain noise equal to 0 with
backend.target['measure'][(0,)].error = 0

and I can do that for each kind of instruction ('id', 'rz', 'sx', 'x', 'cx', 'measure') and for each qubit.
If I do that, I still have noisy expectation values. The noise is not due to the fine amount of shots since with ideal quantum circuits with the same amount of shots I get much better results.
Which kind of noise is still acting on the circuit?
A reproducible example:
import numpy as np
from qiskit import QuantumCircuit, Aer, transpile
from qiskit_aer import AerSimulator
from qiskit.opflow import CircuitStateFn, Z, I
from sklearn.metrics import mean_absolute_error
from qiskit.providers.fake_provider import FakeAthensV2

op = I^I^I^I^Z

backend = FakeAthensV2()
for k in backend.target.keys():
    for i in backend.target[k].keys():
        if k != 'reset' and k != 'delay':
            backend.target[k][i].error = 0 # Put the noise equal to 0 for each instruction
sim = AerSimulator.from_backend(backend) # Fake backend with 0 noise simulator

sim_ideal = Aer.get_backend('aer_simulator') # Ideal simulator

shot = 10000 # number of shots per circuit

ideal_expval = []
ideal_shots_expval = []
fake_backend_expval = []
for samples in range(10): # I calculate the mean absolute error of the expectation value over 10 circuits

    theta = np.random.uniform(0,1)

    qc = QuantumCircuit(5)
    for j in range(30):
        for i in range(5):
            qc.rx(theta,i)
        for i in range(4):
            qc.cx(i,i+1)

    qc = transpile(qc, sim, optimization_level=0)
    psi = CircuitStateFn(qc)
    exact_expval = psi.adjoint().compose(op).compose(psi).eval().real # exact expectation value
    ideal_expval.append(exact_expval)
    qc.measure_all()

    # Fake Backend
    result = sim.run(qc, shots=shot).result()
    key = [list(i) for i in (list(result.get_counts().keys()))] # output bit strings
    key = np.array(key)
    val = np.array(list(result.get_counts().values())) # output bit strings probabilities
    indices_plus = np.where(key[:, -1] == '0')
    indices_minus = np.where(key[:, -1] != '0')
    expval_fake = np.sum(val[indices_plus]) - np.sum(val[indices_minus])
    fake_backend_expval.append(expval_fake/shot)

    # Ideal Backend with shots
    result = sim_ideal.run(qc, shots=shot).result()
    key = [list(i) for i in (list(result.get_counts().keys()))] # output bit strings
    key = np.array(key)
    val = np.array(list(result.get_counts().values())) # output bit strings probabilities
    indices_plus = np.where(key[:, -1] == '0')
    indices_minus = np.where(key[:, -1] != '0')
    expval_ideal_shots = np.sum(val[indices_plus]) - np.sum(val[indices_minus])
    ideal_shots_expval.append(expval_ideal_shots/shot)

print('MAE between exact expectation values and expectation value calculated with ideal backend with 10000 shots:',mean_absolute_error(ideal_expval, ideal_shots_expval))
print('MAE between exact expectation values and expectation value calculated with fake backend with 0 noise:',mean_absolute_error(ideal_expval, fake_backend_expval))

The output is:
MAE between exact expectation values and expectation value calculated with ideal backend with 10000 shots: 0.006748880604561936
MAE between exact expectation values and expectation value calculated with fake backend with 0 noise: 0.06720803337803631

The noise model seems to be added upon initializing the simulator. Even if I explicitly add an empty noise model to the backend beforehand, after initalizing the simulator, there is a noise model present again. If you add:
noise_model = NoiseModel() sim.set_options(noise_model=noise_model)
after
sim = AerSimulator.from_backend(backend) # Fake backend with 0 noise simulator
it works as expected. The initial values probably get overridden somethere inside the class. Best regards!


Leaks

Hi.
I have accidentally googled this issue in RxSwift: https://github.com/ReactiveX/RxSwift/issues/573
and decided to check CocoaActions.
   class ReleaseMe {
        var name: String

        init(name: String) {
            self.name = name
        }

        deinit {
            print("deinit for \(name)")
        }
    }

    func request() -> Observable<Void> {
        let captured = ReleaseMe(name: "captured")

        return Observable.just(ReleaseMe(name: "just"))
            .map {_ in
                captured.name
            }
            .map(void)
    }

    private func bindModel() {
        loginButton.rx_action = CocoaAction() {[unowned self] in
            return self.request()
        }
    }

ReleaseMe objects are not freed when i tap the button.
I managed to make it work only after i got rid of ReplaySubject and addDisposableTo in Action class, but i guess it is not an option :)

Cool, thanks for reporting the issue. I'll take a look asap.

I'm curious, if you tap the button a second time, does the first ReleaseMe get released?

Memory management issues are what I always consider something serious.
@ashfurrow It's not clear from your last comment whether you've been able to reproduce the issue or it seems to be all right there?

Is it related to the pull-request #33?

any updates?

Is this problem fixed?

It sounds like #33 fixed this but I can't remember for sure. If someone were able to test for us, that would be a welcome contribution 🙇

Action 3.1.1
Cannot reproduce this.

Thanks for checking @ixrevo 🙇 I'm going to close this, but if anyone finds any problems please don't hesitate to let us know in a new issue.


CupertinoPageTransitionsBuilder does not clip CustomPaints

Steps to reproduce
** Option 1 **
You can run this code snippet using DartPad: https://dartpad.dev/?id=ec7c30e5bcba40852fe45c995c5adee9
** Option 2 **
Or you can run the code sample below.
Expected results
I used a semi circle in this example to give an idea on how it should behave.
https://github.com/flutter/flutter/assets/25615167/480d8c5f-ac40-4a73-9938-86cf573af21a
Actual results
https://github.com/flutter/flutter/assets/25615167/aa22be20-2efd-4fe2-ab18-bdfb84d69e69
Here is a our real world use case, we are using custom paint to draw circles in the background at random positions to achieve the effect we are looking for. I made the circle's random positions biased to the left so that you could see the problem everytime.
https://github.com/flutter/flutter/assets/25615167/6dec02b4-9409-43b2-b122-a2bc58ae78de
Code sample
I used the '''pageTransitionsTheme''' to make the app use the iOS transition even through it is viewed in a DartPad. I also used '''scrollBehavior''' to be able to use touch gestures with a mouse.
DartPad↗
Code sample
import "dart:ui";

import 'package:flutter/material.dart';

void main() {
    runApp(const App());
}

class App extends StatelessWidget {
    const App({ super.key });

    @override
    Widget build(BuildContext context) {
        return MaterialApp(
            theme: ThemeData(
                pageTransitionsTheme: const PageTransitionsTheme(builders: {
                    TargetPlatform.android: CupertinoPageTransitionsBuilder(),
                    TargetPlatform.fuchsia: CupertinoPageTransitionsBuilder(),
                    TargetPlatform.iOS: CupertinoPageTransitionsBuilder(),
                    TargetPlatform.linux: CupertinoPageTransitionsBuilder(),
                    TargetPlatform.macOS: CupertinoPageTransitionsBuilder(),
                    TargetPlatform.windows: CupertinoPageTransitionsBuilder()
                })
            ),
            scrollBehavior: const MaterialScrollBehavior().copyWith(
                dragDevices: {
                    PointerDeviceKind.mouse,
                    PointerDeviceKind.touch,
                    PointerDeviceKind.stylus,
                    PointerDeviceKind.unknown
                }
            ),
            home: const HomePage()
        );
    }
}

class HomePage extends StatelessWidget {
    const HomePage({ super.key });

    @override
    Widget build(BuildContext context) {
        return Scaffold(
            body: Center(
                child: TextButton(
                    onPressed: () => Navigator.push(context, MaterialPageRoute(builder: (_) => const ContentPage())),
                    child: const Text("Open content page")
                )
            )
        );
    }
}

class BackgroundPainter extends CustomPainter {
    BackgroundPainter();

    @override
    void paint(Canvas canvas, Size size) {
        final Paint paint = Paint();

        paint.color = Colors.red;
        canvas.drawCircle(
            const Offset(-0, 250),
            200,
            paint
        );
    }

    @override
    bool shouldRepaint(BackgroundPainter oldDelegate) => true;
}

class ContentPage extends StatelessWidget {
    const ContentPage({ super.key });

    @override
    Widget build(BuildContext context) {
        return Scaffold(
            extendBodyBehindAppBar: true,
            extendBody: true,
            backgroundColor: Colors.purpleAccent,
            appBar: AppBar(
                backgroundColor: Colors.transparent,
            ),
            body: CustomPaint(painter: BackgroundPainter())
        );
    }
}

Screenshots or Video
No response
Logs
No response
Flutter Doctor output
Doctor output
[√] Flutter (Channel stable, 3.16.4, on Microsoft Windows [Version 10.0.22621.2861], locale en-US)
    • Flutter version 3.16.4 on channel stable at C:\Tools\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 2e9cb0aa71 (5 days ago), 2023-12-11 14:35:13 -0700
    • Engine revision 54a7145303
    • Dart version 3.2.3
    • DevTools version 2.28.4

[√] Windows Version (Installed version of Windows is version 10 or higher)

[√] Android toolchain - develop for Android devices (Android SDK version 33.0.2)
    • Android SDK at C:\Users\-\AppData\Local\Android\sdk
    • Platform android-33-ext5, build-tools 33.0.2
    • Java binary at: C:\Program Files\Android\Android Studio\jbr\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-9505619)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop Windows apps (Visual Studio Community 2022 17.7.5)
    • Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Community
    • Visual Studio Community 2022 version 17.7.34202.233
    • Windows 10 SDK version 10.0.22000.0

[√] Android Studio (version 2022.1)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-9505619)

[√] VS Code (version 1.85.1)
    • VS Code at C:\Users\-\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.78.0

[√] Connected device (4 available)
    • sdk gphone64 x86 64 (mobile) • emulator-5554 • android-x64    • Android 13 (API 33) (emulator)
    • Windows (desktop)            • windows       • windows-x64    • Microsoft Windows [Version 10.0.22621.2861]
    • Chrome (web)                 • chrome        • web-javascript • Google Chrome 120.0.6099.109
    • Edge (web)                   • edge          • web-javascript • Microsoft Edge 120.0.2210.61

[√] Network resources
    • All expected network resources are available.

• No issues found!

Reproducible using the code sample provided above.

flutter doctor -v
[✓] Flutter (Channel stable, 3.16.4, on macOS 14.1.2 23B92 darwin-arm64, locale en-GB)
    • Flutter version 3.16.4 on channel stable at /Users/nexus/dev/sdks/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 2e9cb0aa71 (6 days ago), 2023-12-11 14:35:13 -0700
    • Engine revision 54a7145303
    • Dart version 3.2.3
    • DevTools version 2.28.4

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0-rc1)
    • Android SDK at /Users/nexus/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0-rc1
    • Java binary at: /Users/nexus/Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.0)
    • Xcode at /Applications/Xcode-15.0.0-Release.Candidate.app/Contents/Developer
    • Build 15A240d
    • CocoaPods version 1.13.0

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.3)
    • Android Studio at /Users/nexus/Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)

[✓] IntelliJ IDEA Ultimate Edition (version 2023.2.5)
    • IntelliJ at /Users/nexus/Applications/IntelliJ IDEA Ultimate.app
    • Flutter plugin version 76.3.4
    • Dart plugin version 232.10072.19

[✓] VS Code (version 1.85.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.78.0

[✓] Connected device (3 available)
    • Nexus (mobile)  • 00008020-001875E83A38002E • ios            • iOS 17.2 21C62
    • macOS (desktop) • macos                     • darwin-arm64   • macOS 14.1.2 23B92 darwin-arm64
    • Chrome (web)    • chrome                    • web-javascript • Google Chrome 120.0.6099.109
    ! Error: Browsing on the local area network for Dean’s iPad. Ensure the device is unlocked and attached with a cable or associated with the same local area network as this Mac.
      The device must be opted into Developer Mode to connect wirelessly. (code -27)

[✓] Network resources
    • All expected network resources are available.

• No issues found!

[!] Flutter (Channel master, 3.18.0-11.0.pre.96, on macOS 14.1.2 23B92 darwin-arm64, locale en-GB)
    • Flutter version 3.18.0-11.0.pre.96 on channel master at /Users/nexus/dev/sdks/flutters
    ! Warning: `flutter` on your path resolves to /Users/nexus/dev/sdks/flutter/bin/flutter, which is not inside your current Flutter SDK checkout at /Users/nexus/dev/sdks/flutters. Consider adding /Users/nexus/dev/sdks/flutters/bin to the front of your path.
    ! Warning: `dart` on your path resolves to /Users/nexus/dev/sdks/flutter/bin/dart, which is not inside your current Flutter SDK checkout at /Users/nexus/dev/sdks/flutters. Consider adding /Users/nexus/dev/sdks/flutters/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 32d42b63de (18 hours ago), 2023-12-17 07:39:25 -0500
    • Engine revision 626c93260f
    • Dart version 3.3.0 (build 3.3.0-238.0.dev)
    • DevTools version 2.31.0-dev.0
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0-rc1)
    • Android SDK at /Users/nexus/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0-rc1
    • Java binary at: /Users/nexus/Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.0)
    • Xcode at /Applications/Xcode-15.0.0-Release.Candidate.app/Contents/Developer
    • Build 15A240d
    • CocoaPods version 1.13.0

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.3)
    • Android Studio at /Users/nexus/Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)

[✓] IntelliJ IDEA Ultimate Edition (version 2023.2.5)
    • IntelliJ at /Users/nexus/Applications/IntelliJ IDEA Ultimate.app
    • Flutter plugin version 76.3.4
    • Dart plugin version 232.10072.19

[✓] VS Code (version 1.85.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.78.0

[✓] Connected device (3 available)
    • Nexus (mobile)  • 00008020-001875E83A38002E • ios            • iOS 17.2 21C62
    • macOS (desktop) • macos                     • darwin-arm64   • macOS 14.1.2 23B92 darwin-arm64
    • Chrome (web)    • chrome                    • web-javascript • Google Chrome 120.0.6099.109
    ! Error: Browsing on the local area network for Dean’s iPad. Ensure the device is unlocked and attached with a cable or associated with the same local area network as this Mac.
      The device must be opted into Developer Mode to connect wirelessly. (code -27)

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.

Please read the documentation of CustomPaint:
https://api.flutter.dev/flutter/widgets/CustomPaint-class.html

The painters are expected to paint within a rectangle starting at the origin and encompassing a region of the given size. (If the painters paint outside those bounds, there might be insufficient memory allocated to rasterize the painting commands and the resulting behavior is undefined.) To enforce painting within those bounds, consider wrapping this CustomPaint with a ClipRect widget.

This is working as expected


Menu

Tasks

[ ] Complete #60.
[ ] Complete #62.
[ ] Implement Menu Definition
[ ] Docs

References

https://headlessui.dev/react/menu
https://github.com/vime-js/vime/blob/master/core/src/components/ui/settings/menu

Outdated issue, completed a long time ago.


azuredatastudio: fix build failures

Description of changes
Fixes an error that prevented azuredatastudio from building due to a hash mismatch
Closes: #324407
Maintainer: @xavierzwirtz

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Upon further inspection it seems there is another build error:
> mv: cannot stat '/nix/store/i3br3icrhl04b2k1pdbig7zapq956k0r-azuredatastudio-1.44.1/azuredatastudio/resources/app/extensions/mssql/sqltoolsservice/Linux/<IP_ADDRESS>/MicrosoftSqlToolsServiceLayer': No such file or directory
For full logs, run 'nix log /nix/store/rnsllh4v960war2v9rh8yaa0mycbgsw7-azuredatastudio-1.44.1.drv'.

I fixed it! Seems something needed to be updated, it builds successfully now

Result of nixpkgs-review pr 325596 run on x86_64-linux 1

1 package built:

azuredatastudio

I fixed it! Seems something needed to be updated, it builds successfully now

Thanks for taking the time to take a look at this and provide a fix :slightly_smiling_face:
I think the version specified also needs to be updated from 1.44.1 to 1.48.1 though?

Sure thing, I'll do that now


Catppuccin extension settings don't respect Profile settings

If Catppuccin options are configured in separate VSCode profiles, the last edited options in any of the settings.json take effect in all VS Code profiles.
Steps to reproduce:

Create 2+ profiles in VS Code
In the default profile, configure accent color to Red and extra borders.
Switch to Profile 2.
Profile 2 also has the accent color Red and border even though the Settings says otherwise.
Change accent color in Profile 2 to Green.
If you switch to Default profile, the color is Green but Settings says Red.
Profile 3 as no configuration done but accent color of the theme is Green (which was set in Profile 2).

Expected Result

Extension should either read configuration per profile's settings.json
Or keep its configuration application-wide which always writes to the default profile i.e. scope set to application (these configurations show up in Settings with Applies to all profiles subtitle irrespective of profile used)

thanks for raising this!
i believe this is caused by the same underlying issue as #443; we "compile" the theme to a json file before applying it, and that currently does not take profiles and workspaces into account. i'll close this issue as it should be fixed at the same time as 443.
duplicate of #443

Duplicate of #443

i'll close this issue as it should be fixed at the same time as 443

👍

@sgoudham and i have done some more research into this issue, and for now it looks like there's unfortunately not much we can do to support this. vscode does not have a profiles API so we are unable to get the current profile in a supported way. this means that our customisation system is unable to work per-profile.
the officially supported method for this situation is to ship static themes that cannot be customised. this is not currently an acceptable solution for us - we have far too many customisation options (and people using them) to simply remove them in favour of static theme files.
we will continue to look into this to see if there's some workaround we can provide, but at the moment it unfortunately does not look good.

The issue is that Catppuccin configuration is currently saved per profile. If the extension's customization system cannot support profiles, the configuration should be saved at application scope.

Catppuccin configuration is currently saved per profile

By this I mean the contributes.configuration object https://github.com/catppuccin/vscode/blob/bbb0b5a231a082790398613266e56268ae2e4de0/packages/catppuccin-vsc/package.json#L55 is written per profile. Not what the extension writes to disk.

Sure. It still remains that we cannot support per profile customisation because the theme is regenerated every time the workspace settings are changed, without any name-spacing for profiles.
There are multiple ways you can try to solve this, if supported by VSCode:

VSCode would need to provide a onDidChangeProfile() event or equivalent when the user switches profile so that we can regenerate the theme. - I couldn't find anything like this while scrolling the API documentation.
VSCode allows extensions to get the name of the current profile so that we can write the theme files to disk namespaced by profile. - Not currently possible as mentioned above.
As @backwardspy mentioned above, you would need to ship static themes so that the theme file on disk is unchanged. (which is what you're supposed to do) - We are not interested in pursing this.

I hit the same roadblock when searching the Extension API documentation. So I understand your decision.
If supporting profiles is not possible or not in the roadmap, at least the inconsistency between settings.json of different profiles can be fixed by scope: application in the manifest. It will sync state of Catppuccin extension settings in VSCode between all profiles.

I didn't realise that you could enforce that, good to know!
Looks like the documentation is inside the contribution points, as you mentioned.
Leaving the screenshot below for easy reference:


[BUG] Built-in optimizations doesn't respect sourcemap option

Bug Report Quick Checklist

[x] I am on the latest version of Snowpack & all plugins.
[x] I use package manager npm (Fill in: npm, yarn, pnpm, etc).
[x] I run Snowpack on OS Linux (Fill in: Windows, Mac, Linux, etc).
[x] I run Snowpack on Node.js v12+

Describe the bug
The optimize.sourcemap option gets overwritten to true during the build process when set as false in the config file. It seems that this depends on optimize.splitting option and setting both of these options to false would suppress sourcemap generation (which is the desired behavior).
I think that this is caused by this line: https://github.com/snowpackjs/snowpack/blob/faa07889c5991b8880de5fbecd9f9dcd5b5bc5a5/snowpack/src/config.ts#L438
To Reproduce

npx create-snowpack-app --template @snowpack/app-template-blank test-project
In snowpack.config.js set optimize option to { bundle: true, sourcemap: false }
npm run build
The file index.js.map is also generated alongside the actual build files (not what I want).
Adding splitting: false and rerun npm run build
The file index.js.map is no longer generated.

Expected behavior
When optimize.sourcemap is set to false, the sourcemap files should not be generated regardless of what other options might be set to.

Got a chance to try snowpack again, and I'm happy to report that no sourcemap is generated when it is set to false. Hurray!


feat: x-scope-orgid header

x-scope-org-id header
extra headers
basic auth

Nice, I need this 👍


[MDRipple] does not work on Android

@nativescript/angular: 13.0.2
@nativescript-community/ui-material-ripple: 6.2.14

import { NativeScriptMaterialRippleModule } from '@nativescript-community/ui-material-ripple/angular';

@NgModule({
  bootstrap: [AppComponent],
  imports: [
    NativeScriptModule,
    HttpClientModule,
    AppRoutingModule,
    NativeScriptMaterialBottomNavigationModule,
    NativeScriptMaterialRippleModule,
    NativeScriptMaterialTabsModule,
    MediaModule
  ],

<StackLayout padding="20" backgroundColor="yellow">
  <MDRipple backgroundColor="lightgray" rippleColor="red" width="100%" height="40"></MDRipple>
  <GridLayout width="100%" height="40" backgroundColor="brown" padding="3">
    <MDRipple height="50" rippleColor="blue">
      <Label text="test"></Label>
    </MDRipple>
  </GridLayout>
</StackLayout>

Works on iOS but doesn't work on Android...

@Bezlepkin what does not work? please a lit bit more explanation

@Bezlepkin what does not work? please a lit bit more explanation

if i set the dimensions of the MDRipple tag, they change. There is no ripple effect and background color.

@Bezlepkin sorry but i really dont undestand. You say they change, what changes?.

@Bezlepkin what s your android version?

Hi! I saw you released an update. Have you fixed the ripple effect?

I had this issue with my recent migration of my app from NS6 to NS8: I'm now using the latest version of @nativescript-community/ui-material-ripple.
In my case, the ripple is not showing if there's not a rippleColor specified, it wasn't mandatory, but seems to be accidentally needed now.
So, instead of
<MDRipple @tap="dosomething">
...

you should now do
<MDRipple rippleColor="red" @tap="dosomething">
...

@Bezlepkin @tartinesKiller it seems ripple is completely broken on android :s i have no idea how to fix it :(
I would suggest to use https://github.com/nativescript-community/ui-material-components#mixins= to have rippleColor work  on any view! This is what i do.

@Bezlepkin @tartinesKiller it seems ripple is completely broken on android :s i have no idea how to fix it :( I would suggest to use https://github.com/nativescript-community/ui-material-components#mixins= to have rippleColor work on any view! This is what i do.

No, it does work for me, but I had to specify a rippleColor, through component property, or with CSS with
mdripple {
    ripple-color: red;
}

After that, it works as intended.
Didn't had time to try to investigate for now however

@tartinesKiller here locally with the dev version it does not work at all anymore


Massive Balance Changes

I might have messed up in the ore cost, idk how to fix cuz I'm on mobile

Will review/discuss tomorrow

Okay


RMC-112: Generate Initial England print file.

Motivation and Context
Change to produce initial England print file.
What has changed
Pass pack code in Action Instruction message
Change column surveyref to packcode in actionrequest table
Create file name as described in RMC-112
https://trello.com/c/1l3Y23Pj/593-rmc-112-action-exporter-service-to-generate-initial-contact-letter-print-file-england-8
How to test?
Run Maven 'mvn clean install
Run acceptance tests:-
https://github.com/ONSdigital/census-rm-acceptance-tests/pull/35

 RMC-112 Action Exporter Service to generate initial contact letter Print File England [8]


Redesign

-redesigned website with pink boundary

site redesign branch and we now have a hot orange background and it's on the left.

Ack, this was actually a mistake! I didn't mean to submit a PR to this repo. But if you like the redesign... I'll submit a real PR later on.

Nice blog and design, Jeff!
Closing and will hold on to the original Jekyll Now style. Thanks :)


chore(main): release 1.4.3

:robot: I have created a release beep boop
1.4.3 (2023-08-07)
🧰 Other

bump go.uber.org/zap from 1.24.0 to 1.25.0 (2e0bd2f)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/bdronneau/memoriesbox/releases/tag/v1.4.3 :sunflower:


Preload documentation outdated after Electron 20 update

This line in particular:
https://github.com/electron/electron-quick-start/blob/master/preload.js#L1-L2
Because renderer is sandboxed by default now, only a subset of Node.js APIs are available in preload.

Resolved by https://github.com/electron/electron-quick-start/pull/643.


Add as a package to CTAN

I think, this project could benefit from being on CTAN.

I think this might turn out to be a bit more long term than 0.8.0. 0.9.0 or 1.0.0 may turn out to be a better fit.

Agreed. Finalize the new D&D interface, then figure out if it's feasible (or appropriate) to support other systems with this package.
I'd rather not publish this on CTAN as dnd or dndbook if we decide to support other systems soon thereafter.
For what it's worth, I'm leaning toward a single rpgbook package, but let's see how the refactor shapes up.

Placing this here so that I don't forget it. l3build seems to be a good package builder and has a setting for building the CTAN distribution.
http://texdoc.net/texmf-dist/doc/latex/l3build/l3build.pdf

We will do this once things have stabilized more with version 0.9 or 1.0.


Request for Argo CD Application Configuration Support in eks_blueprints_addons Module

Description
I am currently migrating from an older module eks_shared_services_kubernetes_addons to the newer eks_blueprints_addons provided by aws-ia. Our existing setup utilizes Argo CD, including complex application configurations. However, it appears that the new eks_blueprints_addons module lacks support for defining Argo CD applications directly.
## Existing Configuration

Here is our current configuration with the older module:

```hcl
module "test_eks_shared_services_kubernetes_addons" {
  source = "github.com/aws-ia/terraform-aws-eks-blueprints//modules/kubernetes-addons?ref=v4.32.1"

  enable_argocd = true
  argocd_helm_config = {
    version          = "5.36.1"
    namespace        = "argocd"
    create_namespace = true
    values           = [templatefile("${path.module}/helm-charts/argocd-values.yaml", {})]

    set_sensitive = [
      {
        name  = "configs.secret.argocdServerAdminPassword"
        value = bcrypt(data.aws_secretsmanager_secret_version.test_argocd_admin_password.secret_string)
      }
    ]
  }
  argocd_applications = {
    applications = {
      add_on_application = false
      type               = "helm"

      path                = "applications"
      repo_url            = "git@bitbucket.org:repo/test-cluster.git"
      target_revision     = "feat/ssl"
      insecure            = false
      ssh_key_secret_name = "git-repo-repositories-private-key"
    }
  }
}

Request
I would like to request the addition or guidance on how to integrate Argo CD application configuration within the eks_blueprints_addons module. This feature is critical for migrating our existing infrastructure without losing the ability to manage applications through Terraform.
Expected Feature
Ideally, the new module would allow for similar configurations, making it possible to define Argo CD applications as part of the module, similar to what was possible in the older module:
argo_cd_applications = {
  # Example configuration
}

Additional Context
This feature is crucial for maintaining our deployment workflows and ensuring that our Kubernetes clusters are managed with best practices using the EKS Blueprints. Any guidance or timeline on when this feature might be available would be greatly appreciated.
Thank you for considering this feature request.

@bryantbiggs


is this project still active ?

are the author and community still active on this project or not, i see that no activity since a few months now

also curious about this, NoFlo looks really interesting and would love to use it for an upcoming project - but it looks to be dead.

Asking myself the same question...

It's in a stable state at the moment, so not sure much activity needed. Of course ready to handle things as they appear 😎

nice to see a response, but giving the time it took I'd say its a pretty good indicator this project is dead.

Based on the fact that the last commit was performed 2 years ago, this projectis actually dead.


hidden field validation

How do I validate the hidden field?

Those are excluded by default. Check the exclude option.


How to open a file in a few tab?

How can I open a file in a new tab instead of replacing the currently open file tab?

You can change the default behaviour by setting g:fuzzy_opencmd, but there's currently no way to do it on a per-file basis.
.vimrc:
let g:fuzzy_opencmd = 'tabedit'

Perfect! Thanks!


added_int_bitwise_operator

added int in bitwise operators for issue #348

[ ] Closes #xxxx (Replace xxxx with the Github issue number)
[ ] Tests added: Please use assert_type() to assert the type of any return value

You're going to have to find a way to have both the changes to core/series.pyi and tests/test_series.py in one PR.  Choose this one or the other one.

xfef #375

added both the files sir in this pr

You need to run poetry run poe style on these last changes.

done sir

done sir

Now you have extra spaces on the 2 lines in tests/test_series.py that precede def test_bitwise_operators() -> None

I also don't know what is happening sir when I run poetry run poe style on my local system it shows no error

Sir ideally two lines gap should be there?

Sir ideally two lines gap should be there?

The gap should be there, but somehow you have blank spaces on the lines.
Do a poetry update -vvv to make sure you have latest versions of black, etc., installed, then poetry run poe style, then commit and push.

sir done everything hope it works

yes sir done the changes

Don't know the error sir works fine on my local system

yes sir

done with the test sir and it finished without a error

still failing on black

don't know sir on my system it doesn't show any error on black

Don't know sir on my system it shows no error

I still don't know what you are doing wrong, so I fixed it myself.

Thanks sir


Broken audio-course link

The course link in the README is broken (leads to https://huggingface.co/audio-course). I think it should be https://huggingface.co/learn/audio-course/

Thank you for noticing! Fixed in https://github.com/huggingface/audio-transformers-course/pull/45


[WIP] 🍰 Create Filter Object in GQL And Rename Args

🍰 Pullrequest

Create filter object in GQL and rename args.
Issues

fixes #1840

Todo

[ ] ask @Mogge where the error comes from
[ ] all the rest

Hey @Mogge ,
I start renaming the filter properties and immediatelly get an error displayed in the editor in line:
https://github.com/gradido/gradido/blob/5fd1a86af1f5efa514b01784750830380fd53c0f/backend/src/graphql/resolver/AdminResolver.ts#L152
I like to know where this comes from.

The one and only open question is if we like to rename the filter properties, see description:

[ ] rename all filterBy* to by*?

because all parameters are now in a filters object which looks like filters.filterByDeleted.
nicer maybe is something likefilters.byDeleted?


[BUG] minSpeaker / maxSpeaker setting equal not possible

API Spec link
https://github.com/Azure/azure-rest-api-specs/blob/main/specification/cognitiveservices/data-plane/Speech/SpeechToText/preview/2024-05-15-preview/speechtotext.json
API Spec version
2024-05-15-preview
Describe the bug
When setting the minSpeakers and maxSpeakers to the same value the api returns:
The value of min speakers should be less than the value of max speakers.
The description of the min and maxSpeakers however do not limit this and allow for equal values.
minCount: A hint for the minimum number of speakers for diarization. Must be smaller than or equal to the maxSpeakers property.
maxCount: The maximum number of speakers for diarization. Must be less than 36 and larger than or equal to the minSpeakers
Ideally the API would allow to specify exactly the amount of speakers -> allow for minSpeakers == maxSpeakers. Otherwise the description should be reworked.
Expected behavior
Allow the setting of minSpeaker = maxSpeaker to have a fixed speaker count.
Actual behavior
Throws an 400 error with The value of min speakers should be less than the value of max speakers.
Reproduction Steps
AUDIO = "<AUDIO_FILE>.mp3"
REGION = "westeurope"
url = f"https://{REGION}.api.cognitive.microsoft.com/speechtotext/transcriptions:transcribe"
params = {"api-version": "2024-05-15-preview"}

headers = {
    "Accept": "application/json",
    "Ocp-Apim-Subscription-Key": <SPEECH_API_KEY>
}

definition = {
    "locales": ["de-DE"],
    "diarizationSettings": {
        "minSpeakers": 2,
        "maxSpeakers": 2
    },
    "profanityFilterMode": "Masked",
}

files = {
    "audio": ("test.mp3", open(AUDIO, "rb")),
    "definition": (None, json.dumps(definition))
}

response = requests.post(url, params=params, headers=headers, files=files)

Environment
No response

@bexxx Please help take a look, thanks.


MB-9411 Switch sftp connection to use private key

MB-9411
Summary
This does the actual small change to make GEX connect via key based authentication. Password based authentication is left as a backup.
Verification Steps for the Author
These are to be checked by the author.

[ ] Tested in the Experimental environment (for changes to containers, app startup, or connection to data stores)
[ ] Have the Jira acceptance criteria been met for this change?

Verification Steps for Reviewers
These are to be checked by a reviewer.
How to test

Follow the instructions in the Dockerfile.local_ssh_test in #10898
Run make build_tools
Run milmove-tasks connect-to-gex-via-sftp

Backend

[ ] Code follows the guidelines for Logging.

Messages

:book:
:link: MB-9411

  Generated by :no_entry_sign: dangerJS against 32db1da710c574e66f595178c9297ad0eda1d948

Test coverage on server failed.
Last run: Fri 11 Aug 2023 03:02:45 AM UTC
Refer to this report to see coverage details for the server app.
Documentation for test coverage can be found at this link.


What font are you using in the screenshot?

Not really an issue; but I'm intrigued what font you're using for the screenshot...

Hey @sdctm,
It is stated in the README.
Thanks.

I have Operator Mono, but it doesn't look like the font in the screenshot.

Oh, yeah. The screenshot changed since then. The new font is FiraCode, hope that helps.


BUG: Weimer is zero in the Southern Hemisphere

When calling Weimer in the southern hemisphere, all values of potential are zero. North seems fine...
I'm not sure if we need to call weimer differently for the southern hemisphere, or what... But I can't solve this right now! Making the issue and moving on...

NOTES
This issue was found (and possibly solved?) in GITM. But it might be different problems... not sure
see the fix at this link: EIE_UaLibrary.f90 subroutine UA_GetPotential or here:

   ! In Weimer, there are sometimes 0 potentials.  I dont know why.
    if (maxval(abs(UAr2_NeedLats)) > 80.0) then

      do iMlt = 2, UAi_NeednMLTs - 1
        do iLat = 2, UAi_NeednLats - 1
          if (ValueOut(iMlt, iLat) == 0.0) then
            if (ValueOut(iMlt, iLat - 1)*ValueOut(iMlt, iLat + 1) > 0) then
              ! this is a "hole" in the potential, since the potential is
              ! the same sign both above and below the current point.
              ValueOut(iMlt, iLat) = ( &
                                     ValueOut(iMlt - 1, iLat) + &
                                     ValueOut(iMlt, iLat - 1) + &
                                     ValueOut(iMlt + 1, iLat) + &
                                     ValueOut(iMlt, iLat + 1))/4.0
            endif
          endif
        enddo
      enddo

    endif

In Weimer, there's a check to see if we're "inside" the boundary. From the subroutine epotval (line ~358):

    call checkinputs(lat,mlt,inside,phir,colat)
    if (inside == 0) then
      epot = fill
      return
    endif

fill is zero, so epot ends up being zero.
Then checkinputs (line ~682) checks if we're "inside":

    lon = mlt*15.
    call dorotation(lat,lon,tlat,tlon)
    radii = 90.-tlat
    inside = 0
    if (radii <= bndyfitr) inside = 1 ! bndyfitr from setboundary
    phir = tlon*deg2rad
    colat = radii

So I think it's just an issue with hemispheres. Not sure what the best way to fix is...

Yes - I think that Weimer doesn't work for the southern hemisphere, in that
it doesn't differentiate between them or something.  I think that we have
to reverse the tilt and then take the abs of the latitude. Maybe reverse By
also?  I can't remember exactly what I did.  I will note this and take a
look.
On Sun, Nov 3, 2024 at 10:47 AM Aaron Bukowski @.***>
wrote:

When calling Weimer in the southern hemisphere, all values of potential
are zero. North seems fine...
I'm not sure if we need to call weimer differently for the southern
hemisphere, or what... But I can't solve this right now! Making the issue
and moving on...
NOTES
This issue was found (and possibly solved?) in GITM. But it might be
different problems... not sure
see the fix at this link: EIE_UaLibrary.f90 subroutine UA_GetPotential
https://github.com/abukowski21/GITM/blob/654553f884d0f7e2c01f120fdae935ffd6186887/util/EMPIRICAL/srcIE/EIE_UaLibrary.f90#L258
or here:
! In Weimer, there are sometimes 0 potentials.  I dont know why.
if (maxval(abs(UAr2_NeedLats)) > 80.0) then
  do iMlt = 2, UAi_NeednMLTs - 1
    do iLat = 2, UAi_NeednLats - 1
      if (ValueOut(iMlt, iLat) == 0.0) then
        if (ValueOut(iMlt, iLat - 1)*ValueOut(iMlt, iLat + 1) > 0) then
          ! this is a "hole" in the potential, since the potential is
          ! the same sign both above and below the current point.
          ValueOut(iMlt, iLat) = ( &
                                 ValueOut(iMlt - 1, iLat) + &
                                 ValueOut(iMlt, iLat - 1) + &
                                 ValueOut(iMlt + 1, iLat) + &
                                 ValueOut(iMlt, iLat + 1))/4.0
        endif
      endif
    enddo
  enddo

endif

In Weimer, there's a check to see if we're "inside" the boundary. From the
subroutine epotval (line ~358):
call checkinputs(lat,mlt,inside,phir,colat)
if (inside == 0) then
  epot = fill
  return
endif

fill is zero, so epot ends up being zero.
Then checkinputs (line ~682) checks if we're "inside":
lon = mlt*15.
call dorotation(lat,lon,tlat,tlon)
radii = 90.-tlat
inside = 0
if (radii <= bndyfitr) inside = 1 ! bndyfitr from setboundary
phir = tlon*deg2rad
colat = radii

So I think it's just an issue with hemispheres. Not sure what the best way
to fix is...
—
Reply to this email directly, view it on GitHub
https://github.com/GITMCode/Electrodynamics/issues/14, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAOYHCRABA32C25DJE4RY3DZ6YZN5AVCNFSM6AAAAABRC3BYSGVHI2DSMVQWIX3LMV43ASLTON2WKOZSGYZTCMRYHEZTANQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

--
Aaron Ridley, Professor
University of Michigan
1416 Space Research Building
Ann Arbor, MI 48109-2143
(734) 764-5727

I went ahead and reversed the tilt & took the absolute value of latitude, as was done in the original version. Link to my commit.
I can change the sign on B_y too, but don't think the previous version did for Weimer05... Definitely possible that I'm not seeing where it was done, since I could only find two instances of B_y being inverted by hemisphere:

when potential was izmem:
https://github.com/abukowski21/GITM/blob/654553f884d0f7e2c01f120fdae935ffd6186887/util/EMPIRICAL/srcIE/EIE_UaLibrary.f90#L477

and in the cusp:
https://github.com/abukowski21/GITM/blob/8ee8d3482a123a345b42df42602f738e231f8867/src/get_potential.f90#L667

It makes sense, I think, to flip B_y. But there may have been a reason it wasn't put into the old version...
If we want it in there, I'll add it. Otherwise I won't. Either way this issue can be closed.

I honestly am not sure how to handle the By stuff.  I need to go back through Weimer to see what we are supposed to do.  It is great that we have the main code for this, so we can just run north and then south and see what it looks like with a large By component.  We can then see what happens.


cached hazelcast object during testing to decrease test time

Hopefully this will speed up the build

Changes Unknown when pulling 79466c53cb278d842fb35205cfedf998b4af8ca1 on HarryEMartland:hazelcast-test-reuse into ** on clun:master**.

@HarryEMartland thank you


fixed

Hey, thanks for the PR! Unfortunately both your commit and PR don't explain what this fixes or why it needs fixing so as it stands we can't accept this. It's also lacking tests which is another thing we'd need before we can go ahead and merge this.
Can you elaborate a bit as to what's going on here?

I'm sorry. I accidentally submitted this PR to the main repository). This is just a copy of the open PR that I wanted to try out in my fork.
https://github.com/pion/dtls/pull/420

Got it, then I'll close this for now. Thanks!


[Feature Request] RAG on Github repos including code, issues and PRs

Required prerequisites

[X] I have searched the Issue Tracker and Discussions that this hasn't already been reported. (+1 or comment there if it has.)
[ ] Consider asking first in a Discussion.

Motivation
Some of the functionalities are already supported.
https://github.com/camel-ai/camel/blob/master/camel/toolkits/github_toolkit.py
Solution
No response
Alternatives
No response
Additional context
No response

close as finished by @raywhoelse


v4: Image doesn't show if I set the width, height with className

Describe the bug
Image doesn't show when I use className to declare width and height.
I have to use inline style to draw an image.
To Reproduce
Put an image into a screen
<Image
        className="w-80 h-80"
        //style={{width: 80, height:80}}
        source="https://media.istockphoto.com/id/1005187314/hu/fot%C3%B3/golden-mix-kutya-j%C3%A1t%C3%A9k-fetch.jpg?s=1024x1024&w=is&k=20&c=e8QhUrdlyDllTWnx68t12OyvAF2uTJ3dmSSL6dKzKBQ="
        transition={1000}
      />

Expected behavior
Shows the image
Expo Snack
https://snack.expo.dev/0vOFJPOvN6Icy4EgBN78Z
(not working, I couldn't install tailwindcss package)
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Nativewind: 4.0.23
expo-image: "~1.3.5",

cssInterop
import {cssInterop} from 'nativewind'
import { Image } from 'expo-image';

cssInterop(Image, { className: "style" });

You can try this and make sure it runs in front

@JinYuSha0 Thank you, it is working.

cssInterop
import {cssInterop} from 'nativewind'
import { Image } from 'expo-image';

cssInterop(Image, { className: "style" });

You can try this and make sure it runs in front
Hey, where do I make that import?
I found this when I try to import it:
Module '"nativewind"' has no exported member 'cssInterop'.t

I'm using RN CLI not expo.


SmbShare: Problem Creating the Fileshare

Details of the scenario you tried and the problem that is occurring
When try to create fileshare resource using following, then get an error:
SmbShare CreateFileShare {
Ensure = 'present'
Name = 'test'
Path = 'C:\test'
}
Verbose logs showing the problem
PSDesiredStateConfiguration\Node : Cannot evaluate parameter 'ScopeName' because its argument is specified as a script block and there is no
input. A script block cannot be evaluated without input.
At line:56 char:1

Node 'localhost' {

  + CategoryInfo          : MetadataError: (:) [PSDesiredStateConfiguration\node], ParentContainsErrorRecordException
  + FullyQualifiedErrorId : ScriptBlockArgumentNoInput,PSDesiredStateConfiguration\node

Compilation errors occurred while processing configuration 'DscConfiguration'. Please review the errors reported in error stream and modify
your configuration code appropriately.
At C:\Windows\system32\WindowsPowerShell\v1.0\Modules\PSDesiredStateConfiguration\PSDesiredStateConfiguration.psm1:3917 char:5

throw $ErrorRecord

~~~~~~~~~~~~~~~~~~

CategoryInfo          : InvalidOperation: (DscConfiguration:String) [], InvalidOperationException
FullyQualifiedErrorId : FailToProcessConfiguration

The operating system the target node is running
Edition: Windows Server 2019 Datacenter
Version: 1809
OS Build: 17763.1999

Version and build of PowerShell the target node is running
Version
5.1.17763.1971
Version of the DSC module that was used ('dev' if using current dev branch)
SmbShare                  ComputerManagementDsc          8.4.0

Resolved the issue.
Forgot to import DSC module 'ComputerManagementDsc'.


Add CI and fix PDBFileType issue

This pull requests does the following things:

Adds some CI to run the tests after every commit on github workflows.
It also adds a badge to the readme file to let you know if the tests are passing.
Fixes an issue I was having with the PDBFileType issue

LGTM, thank you!


Try downgrading cargo-codecov

Pull request
Description

Related

RFC
Related Issues: fixes #000, closed #000
Related docs PR

Checklist

[ ] The RFC, if required, has been submitted and approved
[ ] Any user-facing impact of the changes is reflected in docs.tremor.rs
[ ] The code is tested
[ ] Use of unsafe code is reasoned about in a comment
[ ] Update CHANGELOG.md appropriately, recording any changes, bug fixes, or other observable changes in behavior
[ ] The performance impact of the change is measured (see below)

Performance

Nope not that either


Support emoji for MTurk import / export

Escapes emoji for Mechanical Turk exporting and importing because Mechanical Turk does not support unescaped emoji. (Error message: "Unsupported characters found")

Updated layout:

@YianZhang This is ready for review; please take a look.

Actually, I have no idea why I didn't think of HTML entity escaping... it should work. I'll try it out.

It works! I swapped to using HTML entities. Can't believe I didn't think about that.


HTML

#HTML
User Story
As a bootcamp student
I want the prework notes to be structured on a webpage
so that I can easily 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 notes listed

#CSS
As a bootcamp student
I want the prework notes to be structured on a webpage
so that I can easily find and read information
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 notes listed


GPodder synced duration not always respected

Describe the bug
Synchronizing played duration of a podcast from AntennaPod over Gpodder seems to work at first glance. Although when I playthe episode in PodFetch, it plays from the beginning and ignores the duration synchronized from AntennaPod.

Also the playing status doesn't seem to be synchronized the other way around: From PodFetch to AntennaPod.
Reproduction
Happens with every sync from AntennaPod
System Info
System:
    OS: Linux 4.4 undefined
    CPU: (2) x64 Intel(R) Celeron(R) J4025 CPU @ 2.00GHz
    Memory: 2.82 GB / 5.64 GB
    Container: Yes
    Shell: 4.4.23 - /bin/ash
  Binaries:
    Node: 20.9.0 - /usr/local/bin/node
    npm: 10.1.0 - /usr/local/bin/npm

Used Package Manager
npm
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guide.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A, please open a GitHub Discussion instead.
[X] The provided reproduction is a minimal reproducible of the bug.

Could you update to the latest version? I added a list of GPodder only tracked podcasts. Maybe there is a mismatch between them. If so remove the web version and add it via the list. This ensures that both podcasts are identical.

Great. It seems to be working. I removed the involved podcasts from Podfetch and did a new "full sync" in AntennaPod. Thanks
But now I recognize that the playing status is not being synched from Podfetch to AntennaPod, and never has been.
Maybe I should open a new PR for that?

Sure I'll have a look at it.

Great. Thanks. Tell me if you need anything from me.

Great. Thanks. Tell me if you need anything from me.

Feel free to try it with the latest image. It should work now as expected

Sadly it does not seem to work on my end.
I tried doing af full sync in AntennaPod, it did not sync as aspected (timestamp of ongoing podcasts). It instead seems like every single podcast is being synced but progress is missing.
Do I have to do anything before testing other than updating the docker image? Eg. disconnecting AntennaPod from Gpodder/Podfetch?


Removing CI sandbox dependency

Summary
This PR attempts to utilize the local go 1.17.5 binary instead of creating a large sandbox image with all dependencies.

The impact of this change is:
Before:
Job duration w/o cache - ~27 min
Job duration w/ cache - ~3 min
After:
Job duration w/o cache - ~7 min
Job duration w/ cache - ~1 min


Add deisa plugin

Short description of the MR
Add Deisa plugin to enable in-situ analysis.
List of things to check before making a PR
Before merging your code, please check the following:

[x] you have added a line describing your changes to the Changelog;
[ ] you have added unit tests for any new or improved feature;
[x] In case you updated dependencies, you have checked pdi/docs/CheckList.md
you have checked your code format:

[x] you have checked that you respect all conventions specified in CONTRIBUTING.md;
[x] you have checked that the indentation and formatting conforms to the .clang-format;
[x] you have documented with doxygen any new or changed function / class;

you have correctly updated the copyright headers:

[x] your institution is in the copyright header of every file you (substantially) modified;
[x] you have checked that the end-year of the copyright there is the current one;

you have updated the AUTHORS file:

[x] you have added yourself to the AUTHORS file;
[x] if this is a new contribution, you have added it to the AUTHORS file;

you have added everything to the user documentation:

[x] any new CMake configuration option;
[x] any change in the yaml config;
[x] any change to the public or plugin API;
[x] any other new or changed user-facing feature;
[x] any change to the dependencies;

you have correctly linked your MR to one or more issues:

[x] your MR solves an identified issue;
[ ] your commit contain the Fix #issue keyword to autoclose the issue when merged.

For the sake of merging this feature quickly, I will open a new issue for the tests.
This plugin has been used with success, so I feel confident that it works well.


Fixing issue 352

I agree that this change would fix the issue.
https://github.com/sctplab/usrsctp/issues/351 and https://github.com/sctplab/usrsctp/issues/352 are incarnations of the same problem: a missing input validation. The root cause is the the input validation is done before and honours unknown parameters which request to stop processing parameters. This is done in sctp_arethere_unrecognized_parameters(). The lookup code in sctp_send_cookie_echo() does not honour the unknown parameters...
Besides the missing input validation, the code would also find cookie parameters it should not find.
Here is the fix I'm currently testing:

Extend sctp_arethere_unrecognized_parameters() to indicate if a valid cookie was found. (this would fix both issues with input validation).
Harden the scanning of parameters in sctp_send_cookie_echo() just in case it will be used in other contexts in the future. This requires protecting against zero length parameters like you suggest and partial parameters.

I'm planning to commit this later today after some more testing.

Sounds good, thanks!


derived_from gets full signature from wrapped

Previously this would fail for wrapped functions (e.g. pd.DataFrame.rename, causing the not implemented parameters section to miss a few parameters. We now traverse __wrapped__ attributes fully before inspecting the arguments.
We had no tests for this function before, and I'm not sure if adding a test is worth it.
Fixes #2949.

Example:
In [1]: import dask.dataframe as dd

In [2]: dd.DataFrame.rename?
Signature: dd.DataFrame.rename(self, index=None, columns=None)
Docstring:
Alter axes labels

...

Notes
-----
Dask doesn't support the following argument(s).

* mapper
* axis
* copy
* inplace
* level

A few notes:

This doesn't work in py27, as the __wrapped__ bit is py3 specific. I think this is fine - the alternative is explicitly mentioning which parameters aren't supported in the derived_from call.
I had to delete a few test lines in dask.array.tests.test_chunk. These were testing that keepdims_wrapper(func) is keepdims_wrapper(keepdims_wrapper(func)), which is not a property this is necessary or ever used. I think this is fine, but may be wrong.

An alternative fix would be to traverse __wrapped__ in derived_from, and leave our getargspec alone.

Switched to use inspect.signature on py3, and fallback to getargspec on py2. This is more correct, and supports more methods of finding the signature properly. Provided tests pass this should be good to merge.


add options as one more parameter to be able to set other options lik…

…e amount latewr

It seems like 'develop' branch was already unstable prior this pull request.

Hi, @novakov-alexey! Please merge develop branch to yours(which will resolve passing of the continuous integration tests), adjust conflicts if any and we will merge the PR. Sorry for the delay.

Hi @VladislavIvanov it seems build is green.


Swift 2.3

Update to Xcode 8 with SWIFT_VERSION = 2.3.

Thanks @bcylin for nice contribution again.


Half margins and paddings broke auto sort

Auto sort doesn't work for half margins and paddings: m-0.5 p-1.5 mt-2.5 pb-3.5 etc. All margins class and padding with .5
If I remove the .5 it works as intended.
I'm using 2.0.0, also happen on previous versions.

Can you try to use this custom regex for HTML:
"/\\bclass\\s*=\\s*[\\\"\\']([\\._a-zA-Z0-9\\s\\-\\:\\/]+)[\\\"\\']/"

Sorry, according to docs I need to put the regex on package.json, assuming that belongs to the extension, where can I find it?

Just had time to check this again, I found the place to put it, in Extension settings json file. On CSS file it works, not sure with HTML,  because event with .5 deleted somehow it doesn't work at all. I'm testing on Vue file.


Review and update SECURITY.md

The Ministry of Justice has a .github repository for default community health files.
This contains SECURITY.md.
We should consider updating this in line with a similar format to other Government examples e.g. https://github.com/alphagov/.github/blob/main/SECURITY.md
Definition of Done

[ ] SECURITY.md updated

Not required. SECURITY.md already contains relevant info.


Adding WiFi and ArtNet capability

Hello. I have recently discovered the following library:
https://learn.sparkfun.com/tutorials/using-artnet-dmx-and-the-esp32-to-drive-pixels/all
This allows to use any software such as MagicQ to control lights such as long RGB strips.
Unfortunately, this is only available for Arduino IDE.
I thought it would be cool to achieve something simillar in esp-idf. Would you be interested in adding WiFi capabilities for parsing ArtNet and DMX data?

Checkout WLED.
Some folks on here are looking into merging this library (hopefully with RDM capabilities) into WLED.
WLED should be the perfect solution in the meantime

Yeah I know but all these projects started on or were adapted for ESP8266 and not ESP32. I would list that as the number 1 reason

Thanks for reaching out! Currently, I have no plans to add ArtNet compatibility. I am working on adding RDM support at the moment. I'm nearly done with implementing minimal controller/responder support for RDM and I have a feeling that a majority of my time will be spent supporting RDM in the near future.
I think the ESP32 is an excellent candidate for ArtNet support because of its built-in WiFi antenna so I am open to the idea of adding ArtNet! It just won't be for a while if I ever get around to it.

Personally I think this DMX library should remain dedicated to what it already does. i.e. doing a good job of sending and receiving DMX over UART. No need to bloat it out with other stuff.
ArtNet is about sending and receiving DMX over ethernet. That should be kept in a different library. Likewise you could also have an sACN library which has superseded ArtNet anyway now.
You could then write your own app to take the output from ArtNet or sACN libraries and send it into esp_dmx. Then add a web server to configure the node etc. But this is all stuff thats needs to go into an application not a library.
From what I remember ArtNet is not hard (I wrote an ArtNet transmitter for some lighting software I was developing 10 years or so ago, but thats in objective C so no use for ESP32). You might want to check out libartnet as a starting point as I expect it would not take a lot to get it to compile for esp-idf as its all straight C using standard BSD functions.
It is on my list to do for my project at some point, but I have other priorities first. But if nobody has done it by the time I need to implement it then I'll crack on with it and make it available.

Personally I think this DMX library should remain dedicated to what it already does. i.e. doing a good job of sending and receiving DMX over UART. No need to bloat it out with other stuff.

I tend to agree with this idea. I have gotten other suggestions that would be a higher priority to me than adding ArtNet, such as writing a C++ wrapper for this library or porting this library to a different microcontroller such as the STM32. But still, I'm not 100% against adding ArtNet. It would just be a hard sell for me.
I've also read that ArtNet and RDM don't play nicely together. That challenge doesn't sound very appetizing to me at the moment, though I'll grant I'm pretty fried with getting RDM working.

Likewise you could also have an sACN library which has superseded ArtNet anyway now.

I've gotten this feedback as well. I'd be interested in seeing an sACN library that also supports ArtNet and regular ACN - I think that could be a particularly useful niche to fill! Especially for technicians (like me) who still have ArtNet equipment in inventory. 😄

Likewise you could also have an sACN library which has superseded ArtNet anyway now.

I've gotten this feedback as well. I'd be interested in seeing an sACN library that also supports ArtNet and regular ACN - I think that could be a particularly useful niche to fill! Especially for technicians (like me) who still have ArtNet equipment in inventory. 😄

FYI sACN does not support RDM.

FYI, sACN uses RDMNet : https://github.com/ETCLabs/RDMnet (which still needs an RDM responder functionality 😉 )

RDMnet is different to sACN, it can be used at the same time so you can get both DMX and RDM via IP.
Lets not make this site a debate on Art-Net vs sACN, they both work to achieve DMX over IP.  I was responding to your quote that sACN doesn't support RDM - Agreed, but the combination of sACN and RDMnet provide the same functionality as Art-Net (without the Broadcast, as Art-Net can flood a WIFI link as non selective like sACN Multicast)

Thank you all for the discourse! I've used DMX-related IP protocols so rarely in my career so I am finding the difference between them very interesting to learn about. I'm definitely going to be doing some research in the future, but I won't hold your breath about ArtNet support for this library. It sounds like WLED will get the job done, as @OckertM mentioned.
In any case, I am in the mood to close some issues so I will be closing this as "not planned." Let me know if you have any additional thoughts!


Translating volumes ptbr

branch containig content of concepts->storage->volumes.md translation.
I tried to find all already translated doc links and update in my translation. The 2 contributors are my github accounts.

/assign @edsoncelio

/label tide/merge-method-squash

Hey, did you removed entire content/en/docs/reference/kubernetes-api/ by mistake?
Please revert changes and squash your commits. After that, feel free to use /unhold command by yourself.
/hold


Manager's log and GUI not added when revisiting controller

Similar issue as in https://github.com/jrl-umi3218/mc_rtc/issues/449

I found that this problem can be solved by force transition to InitialState from the Rviz GUI.


fix: Trigger NoLiveMixedWithDeferStreamRule only if query has @live directive

Some queries with fragments marked with @defer would trigger this error without actually having @live directive in the query
example query:
{
  containers {
    id
    ...TriggerError
  }
}

fragment TriggerError on Container {
  id
  ... on Container @defer {
    stats
  }
}

@aarne can you please add a test case for this change?


[wrt] Improve steps for bdd tests

Memo Pad8:
Impacted TCs num(approved): New 0, Update 6, Delete 0
Unit test Platform: Crosswalk Project for Android 19.48.493.0
Unit test result summary: Pass 6, Fail 0, Blocked 0

LGTM


Compose component name for nested classes

Currently, component names are solely defined by their class names. This can be a problem for world generator configurations. The facet providers' configuration data is attached as a component to the world entity so it can be saved/loaded through the entity system. These names need to be unique - see #1924.
This leads to some rather long names such as PerlinHillsAndMountainsProvider.PerlinHillsAndMountainsProviderConfiguration
This PR resolves the issue by adding the enclosing class name (if available) to the component name. The nested class name could then simply be Configuration for more than one facet provider.
This PR also adds a warning if two different classes are registered for the same component name.
Closes #1924

Refer to this link for build results (access rights to CI server needed):
http://jenkins.terasology.org/job/TerasologyPRs/263/
Hooray Jenkins reported success with all tests good!

What if the outer class is also a static inner class?

I think that would be a rather exotic scenario - similar to your argumentation in #1924. Still, it would work if any of two inner classes names' differ. If not, a warning is reported. Thus, I believe that it is covered well enough.

Merge time? @immortius any further comments?


🌐 Extend Analytical Platform Ingestion's VPC

This pull request:

TBC

Signed-off-by: Jacob Woffenden<EMAIL_ADDRESS>

@jacobwoffenden Terraform plan evalaution detected changes to resources that require approval from a member of @ministryofjustice/modernisation-platform

@jacobwoffenden Terraform plan evalaution detected changes to resources that require approval from a member of @ministryofjustice/modernisation-platform


Collection template item metadata not used in the submission UI

If you have a collection with an item template, and you start a new submission in that collection. The rest response of the POST to the workspaceItem endpoint will contain the metadata from the item template, so will the linked Item object if you fetch it directly. However the submission UI won't fill those values in the first time the form is rendered.
If you don't fill out anything, but click the "save for later" button, and then edit that submission again the fields do show up.

@atarix83 : It looks like you self-assigned this a while back.  Could you provide an estimate for this work?  Are you still wanting to claim this for beta 5?

@atarix83 : Somehow this ticket got lost between Beta 4 and Beta 5.  Could you estimate this? (It may be dependent on fixing #1034 first)

@tdonohue I've verified it again and it seems that the issue is not present anymore.
On the demo the 1-step Workflow collection has an item template configured, and if you start a submission there you see the metadata of the template immediately

@atarix83 : Thanks. I'll close this as fixed then.

unfoturnately,bug still exit.  the 1-step Workflow collection display is wrong 😂

@tdonohue I've verified it again and it seems that the issue is not present anymore. On the demo the 1-step Workflow collection has an item template configured, and if you start a submission there you see the metadata of the template immediately

@yxq477 : The screenshots you shared are a misusage of the feature.   You've created a template item which sets the value of dc.contributor.advisor, but there is no Advisor field in the submission form.  That is why it's not displaying is because the submission form doesn't have that field.
If you instead create a template item that has dc.contributor.author set, you'll see that the value appears in the Authors field.  I've just tried that myself and this feature is working as expected.
If you want to instead create a template item that sets dc.contributor.advisor, then you should update your Submission form configuration to display that field.  Then it would also work as expected.
If you have further questions, please use one of our support channels.

update your Submission form configuration

@yxq477 : The screenshots you shared are an incorrect usage of the feature. You've created a template item which sets the value of dc.contributor.advisor, but there is no Advisor field in the submission form. That is why it's not displaying is because the submission form doesn't have that field.
If you instead create a template item that has dc.contributor.author set, you'll see that the value appears in the Authors field. I've just tried that myself and this feature is working as expected.如果您创建一个设置了 dc.contributor.author 的模板项，您将看到该值显示在“作者”字段中。我刚刚亲自尝试过，此功能按预期工作。
If you want to instead create a template item that sets dc.contributor.advisor, then you should update your Submission form configuration to display that field. Then it would also work as expected.
If you have further questions, please use one of our support channels.

oh, I understand. thanks for your help


server_history: Prevent concurrent requests for the same stream_id.

This PR updates the get_server_history function to return early if a request is already in progress for a given stream_id, thus preventing concurrent requests for a single stream_id.
We maintain a set request_pending_stream_ids, which contains all the stream IDs for whom requests are in progress.
Using this set, we return early.
Fixes: #26915.

Self-review checklist

[x] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[x] Explains differences from previous plans (e.g., issue description).
[ ] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[x] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[x] Each commit is a coherent idea.
[x] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[ ] Visual appearance of the changes.
[ ] Responsiveness and internationalization.
[ ] Strings and tooltips.
[ ] End-to-end functionality of buttons, interactions and flows.
[x] Corner cases, error conditions, and easily imagined bugs.

This looks great, merged, thanks @prakhar1144!


compute_ctl: Auto-set dynamic_shared_memory_type

Part of neondatabase/cloud#12047.
The basic idea is that for our VMs, we want to enable swap and disable Linux memory overcommit. Alongside these, we should set postgres' dynamic_shared_memory_type to mmap, but we want to avoid setting it to mmap if swap is not enabled.
Implementing this in the control plane would be fiddly, but it's relatively straightforward to add to compute_ctl.
Summary of changes
Change compute_ctl's write_postgres_conf to inject dynamic_shared_memory_type = mmap iff vm.overcommit_memory = 2 (which we can check by reading /proc/sys/vm/overcommit_memory).

Need to test on staging first, then will merge. :crossed_fingers:

Tested on staging successfully. Noticed some other issues because I was testing with weird settings: https://neondb.slack.com/archives/C06SW383C79/p1712714106564139


Route with no 'component' prop produces an error

TypeError: Cannot read property '@@reduxReactRouterPreload/loaderField' of undefined
I believe, this line produces it
server.js :
.map(component => component[ LOADER_FIELD ])

Solved by https://github.com/babotech/redux-router-preload/pull/5


Failed to parse valid "SELECT" statement containing table aliases

I am trying to parse a query which contains columns qualified with their table name, which has been aliased. However, the parser seems to choke at random instances of aliases. For example:
SELECT d.id, d.uuid, d.name, d.amount, d.percentage, d.modified_time FROM discount d LEFT OUTER JOIN discount_category dc ON d.id = dc.discount_id WHERE merchant_id=? AND deleted=? AND dc.discount_id IS NULL AND modified_time<? AND modified_time>=? ORDER BY modified_time
gives me the following error:
Caused by: net.sf.jsqlparser.parser.ParseException: Encountered " <S_IDENTIFIER> "dc "" at line 1, column 186.
Was expecting one of:
    "NOT" ...
    "(" ...
    "(" ...
    "NOT" ...
    "NOT" ...
    "NOT" ...
    "NOT" ...
    "(" ...
    "(" ...
    "(" ...
+about 40 more of the same line

Any ideas here? My first guess would be maybe when aliasing the table, I have LEFT OUTER JOIN discount_category dc instead of LEFT OUTER JOIN discount_category AS dc, so since the AS is missing the parser does not know what alias to look for...however, it successfully got through the first instance of the alias (d.id = dc.discount_id) so I'm not sure why it would be failing later.

I will look into it.

Strange. Using JSqlParser 0.9.4-SNAPSHOT (but I would guess 0.9.x as well) I have no problem parsing your statement. Which version do you use?

I'm using 0.9.
<groupId>com.github.jsqlparser</groupId>
<artifactId>jsqlparser</artifactId>
<version>0.9</version>

I've got a few other examples of queries that give me similar errors. I'll send them your way if you want.

Could you try 0.9.3.

any results?

sorry for the delay. still happening to me after switching to 0.9.3 :(
SELECT r.id, r.uuid, r.name, r.system_role FROM role r  WHERE r.merchant_id = ? AND r.deleted_time IS NULL ORDER BY r.id DESC (SchemaService)
net.sf.jsqlparser.JSQLParserException
	at net.sf.jsqlparser.parser.CCJSqlParserUtil.parse(CCJSqlParserUtil.java:51)
	...
Caused by: net.sf.jsqlparser.parser.ParseException: Encountered " <S_IDENTIFIER> "r "" at line 1, column 85.
Was expecting one of:
    "NOT" ...
    "(" ...
    "(" ...
    "NOT" ...
    "NOT" ...
    "NOT" ...
    "NOT" ...
    "(" ...
    "(" ...

	at net.sf.jsqlparser.parser.CCJSqlParser.generateParseException(CCJSqlParser.java:12109)
	at net.sf.jsqlparser.parser.CCJSqlParser.jj_consume_token(CCJSqlParser.java:11965)
	at net.sf.jsqlparser.parser.CCJSqlParser.AndExpression(CCJSqlParser.java:3215)
	at net.sf.jsqlparser.parser.CCJSqlParser.OrExpression(CCJSqlParser.java:3134)
	at net.sf.jsqlparser.parser.CCJSqlParser.Expression(CCJSqlParser.java:3113)
	at net.sf.jsqlparser.parser.CCJSqlParser.WhereClause(CCJSqlParser.java:2707)
	at net.sf.jsqlparser.parser.CCJSqlParser.PlainSelect(CCJSqlParser.java:1389)
	at net.sf.jsqlparser.parser.CCJSqlParser.SelectBody(CCJSqlParser.java:1281)
	at net.sf.jsqlparser.parser.CCJSqlParser.Select(CCJSqlParser.java:1268)
	at net.sf.jsqlparser.parser.CCJSqlParser.SingleStatement(CCJSqlParser.java:74)
	at net.sf.jsqlparser.parser.CCJSqlParser.Statement(CCJSqlParser.java:54)
	at net.sf.jsqlparser.parser.CCJSqlParserUtil.parse(CCJSqlParserUtil.java:49)
	... 34 more

Again, I was able to parse your statement. I included both of your SQLs as tests (SelectTest.testIssue154, SelectTest.testIssue154_2). Are you able to build JSqlParser 0.9.4-SNAPSHOT from scratch? Are the tests succeeding here?
My guess is you have an encoding Problem. There are some invisible characters within your SQL that are lost using copy and past the SQL into GitHub.

very strange that you're not able to reproduce this....I built 0.9.4-SNAPSHOT from source and tried it, and got the same results. I checked the string did not contain any extraneous characters (extra spaces, newlines, etc) and it does not...I'm really not sure why we get different results. possibly your environment is configured differently than mine?
for now I have workarounds for this issue, so it's not incredibly urgent that we address it. just trying to help though!

travis ci does succeed as well.

Tested here with Java 1.7, 1.8,  travis uses oracle jdk and open jdk. So indeed, very weird.

Could we close this issue? My status is still: not reproducable.

sure, I do still think it's a (small) issue but I made a workaround so it's not important for now.


circle ci fails for gts 2.0.0

We are using gts version 1.1.0, but on circle ci gts didn't have version and recently was updated to ver. 2.0.0. There were problems with that and lerna couldn't boostrap dependency correctly. I did a fix to use the same version we use in our packages (1.1.0) but this should be investigated separately to see if we want to use latest version and then probably update circle ci config file as well as all packages to use new gts version.
The fix is done in this PR
https://github.com/open-telemetry/opentelemetry-js/pull/958

@dyladan, @mayurkale22  ^^

See: https://github.com/google/gts/blob/master/CHANGELOG.md#-breaking-changes-

there was already something on this: #891 #892 but the PR is still in draft. Oliver was waiting for the new gts to release. Now that it is ready he can probably get this going.

Closing as a duplicate of #891


fix gp3 autoscale

Noticed your PR here (thanks for this!)
https://github.com/awslabs/amazon-ebs-autoscale/pull/51
When attempting to run, it had a few minor issues.
Seems to be working now.  Have a look?

this is now working, shall we re-engage with awslabs?


Hang up on nonexistent domains or timeouts

What is Happening / What is expected
I'm not quiet sure if this relates to nonexistent domain or is always the case if a query times out.
When querying for a domain DPS, tries every solver available, each with a timeout of 10 seconds, until it get's a response or every solver failed.
If the domain does not exist, DPS needs multiple minutes to try each solver. While it is trying them, any other request will not be processed.
Steps to reproduce:

Start DPS
Query for a nonexistent domain, eg. asd.asd

This will timeout after some seconds

Now query a real domain, eg. google.com

This will also timeout now after some seconds

After some minutes, queries will work again

Specs

OS: EndeavourOS
Docker Version:

Client:
 Version:           23.0.1
 API version:       1.42
 Go version:        go1.20
 Git commit:        a5ee5b1dfc
 Built:             Sat Feb 11 13:58:04 2023
 OS/Arch:           linux/amd64
 Context:           default

Server:
 Engine:
  Version:          23.0.1
  API version:      1.42 (minimum version 1.12)
  Go version:       go1.20
  Git commit:       bc3805a0a0
  Built:            Sat Feb 11 13:58:04 2023
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          v1.7.0
  GitCommit:        1fbd70374134b891f97ce19c70b6e50c7b9f4e0d.m
 runc:
  Version:          1.1.4
  GitCommit:
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

DPS Version:  Tried with 3.13.1 and 3.15.2-snapshot. Somewhere between these two versions something changed. In 3.13.1 only a timeout message is logged. In 3.15.2-snapshot a NullPointerException is logged after the timeout message.

Sorry for the missing log, I'm in a hurry right now, but I think this should be fairly easy to reproduce.

Hey, I'm not able to reproduce when using DPS with default options
time nslookup asd.asd
Server:		<IP_ADDRESS>
Address:	<IP_ADDRESS>#53

** server can't find asd.asd: NXDOMAIN

real	0m0.022s
user	0m0.003s
sys	0m0.009s
typer@typer-pc:~$ time nslookup google.com
Server:		<IP_ADDRESS>
Address:	<IP_ADDRESS>#53

Non-authoritative answer:
Name:	google.com
Address: <IP_ADDRESS>
Name:	google.com
Address: 2800:3f0:4001:828::200e

real	0m0.023s
user	0m0.006s
sys	0m0.007s

I suppose it's related to the remote server you're using, maybe it is taking more than 10 seconds to answsr (DPS timeout is set 10s) then returns null. In that case the slowness is related to the proxied server.
I will make a test with a bad remote server to see if I get a NPE.

Okay... the NPE bug is confirmed when using a bad remote server which will never respond (<IP_ADDRESS>:85), I will work to fix that soon, no sure if it will increase your speed experience as your remote server is taking too long to respond.
10:03:08.178 [Thread-9       ] INF c.m.dnsproxyserver.server.dns.solver.SolverRemote l=47   m=handle                          status=timedOut, req=google.com, msg=Timed out while trying to resolve google.com./A, id=34124 class=IOException
10:03:08.179 [Thread-9       ] DEB c.m.dnsproxyserver.server.dns.solver.SolverCache  l=42   m=lambda$handleRes$0              status=noAnswer, action=cantCache, k=A-google.com
10:03:08.179 [Thread-9       ] WAR c.m.d.server.dns.RequestHandlerDefault            l=82   m=solve0                          status=solverFailed, currentSolverTime=10006, totalTime=10115, solver=SolverCachedRemote, eClass=NullPointerException, msg=Cannot invoke "com.mageddo.dnsproxyserver.server.dns.solver.Response.toBuilder()" because "res" is null
java.lang.NullPointerException: Cannot invoke "com.mageddo.dnsproxyserver.server.dns.solver.Response.toBuilder()" because "res" is null
	at com.mageddo.dnsproxyserver.server.dns.solver.SolverCachedRemote.handle(SolverCachedRemote.java:35)
	at com.mageddo.dnsproxyserver.server.dns.RequestHandlerDefault.solve0(RequestHandlerDefault.java:68)
	at com.mageddo.dnsproxyserver.server.dns.solver.SolverCache.lambda$handleRes$0(SolverCache.java:40)
	at com.mageddo.commons.caching.LruTTLCache.computeIfAbsent0(LruTTLCache.java:82)
	at com.mageddo.dnsproxyserver.server.dns.solver.SolverCache.handleRes(SolverCache.java:38)
	at com.mageddo.dnsproxyserver.server.dns.solver.SolverCache.handle(SolverCache.java:33)
	at com.mageddo.dnsproxyserver.server.dns.RequestHandlerDefault.solve(RequestHandlerDefault.java:46)
	at com.mageddo.dnsproxyserver.server.dns.RequestHandlerDefault.handle(RequestHandlerDefault.java:38)
	at com.mageddo.dnsproxyserver.server.dns.UDPServer.handle(UDPServer.java:54)
	at com.mageddo.dnsproxyserver.server.dns.UDPServer.lambda$start0$0(UDPServer.java:42)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
	at java.base/java.lang.Thread.run(Thread.java:1589)

Fixed the NPE, bug realized that is there is some unexpected behavior happening, I'm seeing logs saying resolver took 40s to finish the process
10:22:52.760 [Thread-34      ] DEB c.m.d.server.dns.RequestHandlerDefault            l=48   m=solve                           status=solved, kind=udp, time=45857, res=google.com

I will take a deeper look at it.

Hey, I've made a improvement on the cache parallelism, I think that is the most major offender to the performance.  There is another improvement to do, let me know if it's enough for your use case.
Just released 3.15.3-snapshot with the improvement.

Hey, just tried it and it looks really good. Thank you!


zabbix_sender was not found!

OS Linux, i get this error, when i'm testing you scripts.
Zabbix agent - v.3.4.2
Zabbix server - v.3.4.2
# ./zabbix-lmsensors-wrapper.py -v  (and other testing command return error with path zabbix_sender ).

./zabbix-lmsensors-wrapper.py -v
ServerActive config value:
<IP_ADDRESS>
Hostname config value:
Zabbix server
zabbix_sender path:
zabbix_sender
was not found!

--
# zabbix_get -s <IP_ADDRESS> -k temp.cpu[max]
ZBX_NOTSUPPORTED: Traceback (most recent call last):
  File "/etc/zabbix/scripts/zabbix-lmsensors-wrapper.py", line 106, in <module>
    senderProc = subprocess.Popen([senderPath, isDebug, '-c', agentConf, '-i', '-'], stdin=subprocess.PIPE, stdout=subprocess.DEVNULL, universal_newlines=True)
  File "/usr/lib/python3.5/subprocess.py", line 947, in __init__
    restore_signals, start_new_session)
  File "/usr/lib/python3.5/subprocess.py", line 1551, in _execute_child
    raise child_exception_type(errno_num, err_msg)
FileNotFoundError: [Errno 2] No such file or directory: 'zabbix_sender'
root@reder-netTop:/etc/zabbix/scripts# zabbix_get -s <IP_ADDRESS> -k temp.cpu[max]
ZBX_NOTSUPPORTED: Traceback (most recent call last):
  File "/etc/zabbix/scripts/zabbix-lmsensors-wrapper.py", line 106, in <module>
    senderProc = subprocess.Popen([senderPath, isDebug, '-c', agentConf, '-i', '-'], stdin=subprocess.PIPE, stdout=subprocess.DEVNULL, universal_newlines=True)
  File "/usr/lib/python3.5/subprocess.py", line 947, in __init__
    restore_signals, start_new_session)
  File "/usr/lib/python3.5/subprocess.py", line 1551, in _execute_child
    raise child_exception_type(errno_num, err_msg)
FileNotFoundError: [Errno 2] No such file or directory: 'zabbix_sender'

How fix it ?

which zabbix_sender?
You can install it with apt-get install zabbix-sender / yum install zabbix-sender
Also please take notice:
https://github.com/nobodysu/zabbix-mini-IPMI/issues/3

This is solved !
But i get next error
zabbix_sender [25495]: DEBUG: send value error: cannot connect to [[<IP_ADDRESS>]:10051]: [111] Connection refused
43

zabbix_sender want connect to <IP_ADDRESS>:10051, what for ( it is no server address ) ?

You must configure your zabbix agent (/etc/zabbix/zabbix_agentd.conf). Provide Server, ServerActive and Hostname. Increase Timeout.