e2e test for windows

Pull Request Test Coverage Report for Build 162754430

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.1%) to 84.064%

Totals

Change from base Build 161378523:
-0.1%

Covered Lines:
428

Relevant Lines:
478

💛  - Coveralls


chore(docs): Update docs content

Descriptions

Fix typo in 05-chapter-4-testing-your-api.mdx
Remove experimental text of prisma studio because it is stable now.

Thanks!


Add links to tutorial

Even though we have an index, I think it would be great to have "previous" and "next" links in each step so tutorial attendees can go from page to page without always having to go via the index.

Adding middleman to generate the site based on the markdown files to make it easier to browse and read with better navigational elements.


Strange errors in UI on 2.12..0

Checklist

Have you pulled and found the error with jc21/nginx-proxy-manager:latest docker image?

No

Are you sure you're not using someone else's docker image?

No

Have you searched for similar issues (both open and closed)?

Yes

Describe the bug
I'm receiving strange message "data/value must match exactly one schema in oneOf" across the UI on many pages.
Nginx Proxy Manager Version
v2.12.0
To Reproduce
Steps to reproduce the behavior:

Go to 'Hosts > Redirection Hosts'
Click on 'Add redirection Host' and leave the scheme to 'Auto'
Fill in the values for 'domain names' and 'forward domain'
Click Save
See error

Another area where this error Persists is 'settings > default site'

Edit 'default site'
Try selecting '404 Page' or 'No Response (444)'
Click Save
See error

Expected behavior
Options should behave as expected.
Screenshots
Screenshots attached below repro steps.
Operating System

Additional context
N/A

Same for me with default site.

+1


Remove references to try.crate.io

Relates to https://github.com/crate/crate/issues/16679

Should this be backported to 5.8 as well?


*: DNS information as dictionary, adding domain, search domains and options

/cc @alban
@thockin might be interested and helpful too

LGTM otherwise

LGTM

Thanks for the reviews!


Add shell completions to wrapper

bash, fish, zsh supported
resolves #4

This doesn't work on macOS (using the default shell, /bin/zsh).


ci: Use --feature-powerset --depth 2 instead of --each-feature

This patch increases feature combinations to be checked (total of all public crates) from 69 to 210.
We have too many features to check the full powerset (1457!), so limit the max number of simultaneous feature flags by --depth option. I think this should be sufficient in most cases as explained in https://github.com/taiki-e/cargo-hack/issues/58.
It took about 8-9 minutes to run in locally, but let's see how long it takes in CI... (If it's less than 10 minutes, it's probably okay to merge as windows CI takes about 8 minutes.)
FYI: @Nemo157 @jhpratt

Ok, this takes about 9 minutes in CI (install 40s + check 8m). Given cargo-hack installation time can be reduced by installing from GitHub release (and Travis does not return status for an hour), this is probably okay.


Information retrieval and spectrum based bug localization: better together

http://dl.acm.org/citation.cfm?id=2786880&CFID=725626965&CFTOKEN=17951443

The authors obtain their data on 157 bugs from 4 popular software projects: AspectJ, Ant, Lucene, and
Rhino.


added DFS.cpp which contain DFS traversal algorithm

hey! check this one out i implemented DFS algo in it great learning🏆

Please mention the issue number in the PR description.

its 9 th in the issue list and #22 is written named by DFS

#22

Okay, in your future PRs mention the issue number in the PR description itself as it becomes easier for us to keep track of issues.🙂


DrillSideways uses advance instead of next when multiple dims miss

Description
We can do better than calling next in drill sideways when two "sideways" dims miss. When two dims miss, we know that the next candidate doc we need to consider can't come before the min of the docs for the dim misses.

Cancelling this out as I've realized we can do even better. I'll post a new PR with a few more optimizations baked in.


[Bug]: Create topic from node, gets 1 replica & 3 partitions, creating from CLI gets 1 replica & 1 partition

Create a topic from CLI

$ fluvio topic create topic-from-cli
topic "topic-from-cli" created
$ fluvio topic list
 NAME            TYPE      PARTITIONS  REPLICAS  IGNORE-RACK  STATUS                   REASON
 topic-from-cli  computed      1          1                   resolution::provisioned

Setup Node Environment

$ mkdir custom-chat && cd custom-chat && npm init -y && \
npm install typescript ts-node @types/node -D && \
npm install @fluvio/client -S

create producer.ts with the following content

import Fluvio, { TopicReplicaParam } from "@fluvio/client";

// Create Fluvio Client Instance
const fluvio = new Fluvio();

// Handle Fluvio errors
process.on('unhandledRejection', error => {
    console.log(error);
});

(async () => {
    // Connect the fluvio cluster;
    await fluvio.connect();

    // Connect to admin interface
    const admin = await fluvio.admin();
    const topic = await admin.findTopic("topic-from-node");

    if (topic == null) {
       await admin.createTopic("topic-from-node");
    }

})();

Check the topics at the CLI:

$ fluvio topic list
 NAME             TYPE      PARTITIONS  REPLICAS  IGNORE-RACK  STATUS                              REASON
 topic-from-cli   computed      1          1                        resolution::provisioned
 topic-from-node  computed      1          3                   resolution::insufficient-resources  need 2 more SPU

Topic from node has 3 replicas, whereas topic from cli has only 1.
There are 2 issues here

[ ] Node client should default to 1 partition.
[ ] Node client should work with options to change the number of partitions.

Fixed.


Registering Bai Virbaiji Soparivala Paris High School, located in Karachi, Pakistan to JetBrains registered domains

Committing the file for the domain bvsparsischool.edu.pk for school BAI VIRBAIJI SOPARIVALA PARSI HIGH SCHOOL, to be added to IntelliJ known domains

@RashidSarwarSyed First stage of verification passed, official domain for BAI VIRBAIJI SOPARIVALA PARSI HIGH SCHOOL is bvsparsischool.edu.pk as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.

@RashidSarwarSyed Thank you for your patience while waiting for a review and processing your request. Pull request merged.


aggregates cache

cache & reuse memory for single aggregate ops execution, like ParaVec inference

Build triggered. sha1 is merged.

Refer to this link for build results (access rights to CI server needed):
/job/nd4j_PR/298/

Build finished. No test results found.


LinkLiar crash almost immediately

I just installed LinkLiar (OS X Yosemite, 10.10.5) and it hangs then crashes almost immediately after I click on its menu bar icon to interact with it. I've turned on debug mode, and would be happy to send logs if you guide me on what to send.

Hm, sorry to hear you have trouble running it. It works fine for me on 10.10.5.

Do you have any (additional) network interfaces attached to your mac? Even a bluetooth dongle?
In System Preferences -> Security -> General -> Allow apps downloaded from... what setting do you have there?
Where is the application file located when you run it?
If you have the logs (run the Console.app to see them), the last one or two lines before the crash would be helpful. So I can get a hint as to where in the code it dies.

If you run ifconfig | grep flags in a Terminal and look at the first thing in every row, I have these:
"lo0, gif0, stf0, en0, en1, p2p0, awdsl0, bridge0, utun0"
Do you have anthing in your list apart from those I have?

Hi halo,

Do you have any (additional) network interfaces attached to your mac? Even a bluetooth dongle?

Under System Preferences > Network, I have the following. Nothing but wifi is attached.

In System Preferences -> Security -> General -> Allow apps downloaded from... what setting do you have there?

"Allow apps downloaded from Mac App Store and identified developers."  I launch other apps such as LinkLiar by holding control while clicking on them the first time, which prompts me whether to authorize them.  Subsequent launches do not cause a prompt.

Where is the application file located when you run it?

I dropped it in my Applications folder

If you have the logs (run the Console.app to see them), the last one or two lines before the crash would be helpful. So I can get a hint as to where in the code it dies.

I've included all the items that occurred between me clicking on the menu bar icon and it crashing.

2016-01-22 3:26:40.978 PM Link[23246]: Refreshing menu before opening it...
2016-01-22 3:26:40.979 PM Link[23246]: Going to refresh...
2016-01-22 3:26:41.005 PM Link[23246]: Proxying from Synchronizer to Intercom...
2016-01-22 3:26:41.006 PM Link[23246]: Intercom is going to check HelperTool version...
2016-01-22 3:26:41.006 PM Link[23246]: connectAndExecuteCommandBlock
2016-01-22 3:26:41.006 PM Link[23246]: Connecting to Helper Tool...
2016-01-22 3:26:41.006 PM Link[23246]: running command...
2016-01-22 3:26:41.006 PM Link[23246]: Yeah, this is the Helper I want.
2016-01-22 3:26:41.014 PM Link[23246]: Don't know what to do with hardware MAC 28:cf:e9:17:c4:97 of Wi-Fi ∙ en0
2016-01-22 3:26:41.014 PM Link[23246]: Don't know what to do with hardware MAC 28:cf:e9:17:c4:97 of Wi-Fi ∙ en0
2016-01-22 3:26:41.014 PM Link[23246]: Don't know what to do with hardware MAC 28:cf:e9:17:c4:97 of Wi-Fi ∙ en0
2016-01-22 3:26:41.014 PM Link[23246]: Don't know what to do with hardware MAC 28:cf:e9:17:c4:97 of Wi-Fi ∙ en0
2016-01-22 3:26:48.386 PM Link[23246]: Refreshing menu before opening it...
2016-01-22 3:26:48.386 PM Link[23246]: Going to refresh...
2016-01-22 3:26:55.645 PM acvpnagent[49]: Function: testNetwork File: ../../vpn/Agent/NetEnvironment.cpp Line: 669 Invoked Function: CNetInterface::GetGatewayAddress Return Code: -32636905 (0xFE0E0017) Description: NETINTERFACE_ERROR_SERVICE_ID_NOT_FOUND
2016-01-22 3:26:56.298 PM acvpnagent[49]: Function: logProbeFailure File: ../../vpn/Agent/NetEnvironment.cpp Line: 1417 The HTTPS probe to <IP_ADDRESS> resulted in a redirect.
2016-01-22 3:26:56.319 PM acvpnagent[49]: Function: analyzeHttpResponse File: ../../vpn/Agent/NetEnvironment.cpp Line: 1612 SG (<IP_ADDRESS>) contacted
2016-01-22 3:26:56.319 PM acvpnagent[49]: Function: TestNetEnv File: ../../vpn/Agent/NetEnvironment.cpp Line: 370 Secure Gateway accessible. Retesting connectivity to the secure gateway in 30 seconds.
2016-01-22 3:26:57.993 PM Link[23246]: CoreAnimation: warning, deleted thread with uncommitted CATransaction; set CA_DEBUG_TRANSACTIONS=1 in environment to log backtraces.
2016-01-22 3:27:09.511 PM Link[23246]: Proxying from Synchronizer to Intercom...
2016-01-22 3:27:09.511 PM Link[23246]: Intercom is going to check HelperTool version...
2016-01-22 3:27:09.511 PM Link[23246]: connectAndExecuteCommandBlock
2016-01-22 3:27:09.511 PM Link[23246]: Connecting to Helper Tool...
2016-01-22 3:27:09.511 PM Link[23246]: running command...
2016-01-22 3:27:09.512 PM Link[23246]: Yeah, this is the Helper I want.
2016-01-22 3:27:09.521 PM Link[23246]: Don't know what to do with hardware MAC 28:cf:e9:17:c4:97 of Wi-Fi ∙ en0
2016-01-22 3:27:09.521 PM Link[23246]: Don't know what to do with hardware MAC 28:cf:e9:17:c4:97 of Wi-Fi ∙ en0
2016-01-22 3:27:09.521 PM Link[23246]: Don't know what to do with hardware MAC 28:cf:e9:17:c4:97 of Wi-Fi ∙ en0
2016-01-22 3:27:09.521 PM Link[23246]: Don't know what to do with hardware MAC 28:cf:e9:17:c4:97 of Wi-Fi ∙ en0
2016-01-22 3:27:09.605 PM com.apple.xpc.launchd[1]: (com.apple.ReportCrash[23281]) Endpoint has been activated through legacy launch(3) APIs. Please switch to XPC or bootstrap_check_in(): com.apple.ReportCrash
2016-01-22 3:27:10.094 PM com.apple.xpc.launchd[1]: (com.funkensturm.Link.212748[23246]) Service exited due to signal: Segmentation fault: 11
2016-01-22 3:27:10.139 PM ReportCrash[23281]: Saved crash report for Link[23246] version 1.0 (1.1.2) to /Users/michael/Library/Logs/DiagnosticReports/Link_2016-01-22-152710_Planarian-4.crash

Oops, missed one:

If you run ifconfig | grep flags in a Terminal and look at the first thing in every row, I have these: lo0, gif0, stf0, en0, en1, p2p0, awdsl0, bridge0, utun0. Do you have anthing in your list apart from those I have?

I've got lo0, gif0, stf0, en0, en1, en2, bridge0, p2p0, awdl0, utun0. The only difference appears to be en2.

Ok, nothing weird so far.

iPad and iPhone not connected, right?
I think en2 is suspicious yes. Do you have a Macbook with a FireWire port? If no other device is attached (e.g. via USB), you should not have more than two interfaces on newer laptops.
In your Network System Preferences in the top where it says "Location" you could try to create a fresh new Location without any interfaces (or maybe just WiFi). You'll loose your Internet Connection when you change to that location, but I suppose LinkLiar would not crash.
I don't exactly follow at which point it crashes: Did you manage to authorizes the Helper Tool? Form the logs I gather that you succeeded with that. I mean what do you see at all in the LinkLiar Menu Item List before it crashes?
In the last line of your log, there is a crash report saved to your disk. Could you email me that to<EMAIL_ADDRESS>or simply post it here if there is no sensitive info in it?

PS: I recommend you always redact your MAC address when posting logs. I did that for you now by editing your post. Also there were some IP addresses in the log i removed.
More debugging tomorrow ;) Thank you for helping to debug!

Hi, sorry I don't feel I have much to reproduce the issue. Apart from the questions in my previous comment, the only thing I could imagine that's really different on your system is is trying to allow apps in your security settings and see if it works any better.

Hello, I just decided to revisit this and see if I could get to the bottom the issue.  Except, I can no longer reproduce the bug!  LinkLiar seems to be working properly on my machine now: it doesn't crash, and I can successfully get it to change my MAC.
My system has changed slightly since we last spoke (ex: I'm now running OS X El Capitan 10.11.4), but it's still the same hardware and mostly the same configuration.  I'm not sure what was causing that bug in January... sorry I couldn't be more of a help tracking it down!

No worries, I'm glad it's working for you. I'm aware of being able to crash LinkLiar by clicking pretty fast back and forth in the menu when the devices change, but it doesn't happen often.
Thanks for reporting!


🐛 BluetoothLE is in unknown state, but the state is PoweredOn

Prerequisites

[X] I checked the documentation and FAQ without finding a solution
[X] I checked to make sure that this issue has not already been filed

Expected Behavior
I expect the iOS device to start scanning devices. Android works just fine.
Current Behavior
The scan gives me the error.message: BluetoothLE is in unknown state.
Library version
3.2.0
Device
iPhone 12 Pro (iOS 17.5.1)
Environment info
info Fetching system and libraries information...
(node:39214) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency
(Use `node --trace-warnings ...` to show where the warning was created)
System:
  OS: macOS 14.5
  CPU: (8) arm64 Apple M2
  Memory: 145.89 MB / 8.00 GB
  Shell:
    version: "5.9"
    path: /bin/zsh
Binaries:
  Node:
    version: 20.15.0
    path: ~/.nvm/versions/node/v20.15.0/bin/node
  Yarn: Not Found
  npm:
    version: 10.8.1
    path: ~/.nvm/versions/node/v20.15.0/bin/npm
  Watchman:
    version: 2<IP_ADDRESS>
    path: /opt/homebrew/bin/watchman
Managers:
  CocoaPods:
    version: 1.15.2
    path: /opt/homebrew/bin/pod
SDKs:
  iOS SDK:
    Platforms:
      - DriverKit 23.5
      - iOS 17.5
      - macOS 14.5
      - tvOS 17.5
      - visionOS 1.2
      - watchOS 10.5
  Android SDK: Not Found
IDEs:
  Android Studio: 2024.1 AI-241.15989.150.2411.11948838
  Xcode:
    version: 15.4/15F31d
    path: /usr/bin/xcodebuild
Languages:
  Java:
    version: 22.0.1
    path: /usr/bin/javac
  Ruby:
    version: 2.6.10
    path: /usr/bin/ruby
npmPackages:
  "@react-native-community/cli": Not Found
  react:
    installed: 18.2.0
    wanted: 18.2.0
  react-native:
    installed: 0.74.2
    wanted: 0.74.2
  react-native-macos: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: true
  newArchEnabled: false
iOS:
  hermesEnabled: true
  newArchEnabled: false

Steps to reproduce

Use the component in a code (I use a token to make a post request and an array of beaconAddresses to find one of the beacons. you can remove the post request part and the token if you want, I don't think that's the problem because the request starts when I find the beacon.)
Use "npx expo run:ios --device --configuration Release"
Use the button in the app and watch the debug text

Formatted code sample or link to a repository
import React, { useState, useEffect } from 'react';
import { TouchableOpacity, Text, StyleSheet, ActivityIndicator } from 'react-native';
import { BleManager } from 'react-native-ble-plx';
import { responsiveFontSize } from 'react-native-responsive-dimensions';
import axios from 'axios';

function TimbratureButton({ style, title, token, beaconAddress }) {
    const [isScanning, setIsScanning] = useState(false);
    const [foundDevice, setFoundDevice] = useState(false);
    const manager = new BleManager();
		const [debug, setDebug] = useState("std");

    useEffect(() => {
        return () => {
            if (isScanning) {
                manager.stopDeviceScan();
            }
        };
    }, [isScanning]);

    const sendToken = () => {
        console.log("Sending through axios.post: ", token);
        axios.post("CENSORED", {
            valoriPost: [],
            token: token
        })
    }

    const handleSearch = async () => {
        console.log("isScanning: ", isScanning);
        console.log("token: ", token);
        console.log("beaconAddress: ", beaconAddress);
				setDebug("ScanStart");

        if (!isScanning && token != "" && token != undefined && beaconAddress != [] && beaconAddress != undefined) {
            setIsScanning(true);
            setFoundDevice(false);
            try {
                const state = await manager.state();
                if (state !== 'PoweredOn') {
                    console.error('Bluetooth is not on. Please enable Bluetooth to scan for devices.');
										setDebug("BT-Off")
                    setIsScanning(false);
                    return;
                }

                console.log('Starting scanning... BTSTATE: ' + state);
                manager.startDeviceScan(null, null, (error, device) => {
                    if (error) {
                        console.error('Scan error: ', error.message);
												setDebug(`ScanErr: ${error.message}, state: ${state}`);
                        setIsScanning(false);
                        return;
                    }
                    for(let i = 0; beaconAddress[i]; i++)
                    {
                        if (device.id == beaconAddress[i].MacAddress) {
                            console.log("Beacon found: ", device.id);
														setDebug("BeaconFound");
                            manager.stopDeviceScan();
                            setIsScanning(false);
                            setFoundDevice(true);
                            sendToken();
                        }
                    }
                });

                setTimeout(() => {
										setDebug("Timeout");
                    manager.stopDeviceScan();
                    setIsScanning(false);
                    setFoundDevice(false);
                }, 10000);
            } catch (error) {
								setDebug("BTState?");
                console.error('Error getting Bluetooth state:', error);
                setIsScanning(false);
            }
        }
        else
				{
						setDebug("DataMissing");
            console.error("Device scan didn't start because some data is missing");
				}
    };

    return (
				<>

				<Text>{debug}</Text>
				<Text>|</Text>
				<Text>|</Text>
				<Text>|</Text>
				<Text>|</Text>
				<Text>|</Text>
				<Text>|</Text>
				<Text>|</Text>
				<Text>|</Text>

        <TouchableOpacity
            onPress={handleSearch}
            style={[
                styles.button,
                isScanning ? styles.scanningButton : foundDevice ? styles.foundButton : styles.normalButton,
                style
            ]}
            disabled={isScanning}
        >
            {isScanning ? (
                <ActivityIndicator size="small" color="#000000" />
            ) : foundDevice ? (
                <Text style={styles.text}>Beacon trovato!</Text>
            ) : (
                <Text style={styles.text}>{title}</Text>
            )}
        </TouchableOpacity>
				</>
    );
}

const styles = StyleSheet.create({
    button: {
        paddingVertical: 12,
        paddingHorizontal: 20,
        borderRadius: 25,
        alignItems: 'center',
        justifyContent: 'center',
        elevation: 2,  // Android shadow
        shadowOpacity: 0.2,  // iOS shadow
        shadowRadius: 4,
        shadowOffset: { height: 2, width: 0 },
        margin: 10,
    },
    scanningButton: {
        backgroundColor: '#FFFF00', // Yellow when scanning
    },
    foundButton: {
        backgroundColor: '#008000', // Green when a device is found
    },
    normalButton: {
        backgroundColor: '#007AFF', // Blue when normal
    },
    text: {
        color: '#FFFFFF',
        fontSize: responsiveFontSize(2),
        fontWeight: '600',
    },
});

export default TimbratureButton;

Relevant log output
I don't know how, I'm sorry. I use the debug variable and the console.log to understand what's going on.

Additional information
I'm a beginner. The button works on android and doesn't work on iOS. Searching online and in other reports I understood that the problem is that iOS initially tells you that the bluetooth is in an unknown status and then it updates the status. The problem is that in my code I console.log the error.message and the status together, and the status is always PoweredOn. Furthermore, before starting the scan I check if it is PoweredOn and it would tell me "BTState?" if it wasn't.

You are correct that on iOS, the initial Bluetooth status is unknown and only changes to PoweredOn after a short while. We have included this information in our documentation. You can find more details here: Waiting for PoweredOn State.
The issue in your code is that you are calling the static method: manager.state().
Instead, you should create a subscription using manager.onStateChange(state => {}). When the status changes to PoweredOn, you can start scanning. Please refer to the example function initializeBLE in this file: BLEService.ts.
Hope this helps.

I've tried the following code but it gives me the same problem on iOS. Sorry that it is starting to look like a mess, but meanwhile I'm working on the android version and I'm using a lot of console.logs to understand what's going on.
import React, { useState, useEffect } from 'react';
import { TouchableOpacity, Text, StyleSheet, ActivityIndicator, PermissionsAndroid, Platform } from 'react-native';
import { BleManager } from 'react-native-ble-plx';
import { responsiveFontSize } from 'react-native-responsive-dimensions';
import axios from 'axios';

async function requestPermissions() {
    if (Platform.OS === 'android') {
        try {
            const granted = await PermissionsAndroid.requestMultiple([
                PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
                PermissionsAndroid.PERMISSIONS.ACCESS_COARSE_LOCATION,
                PermissionsAndroid.PERMISSIONS.BLUETOOTH_SCAN,
                PermissionsAndroid.PERMISSIONS.BLUETOOTH_CONNECT,
            ]);
            const allGranted = Object.values(granted).every(permission => permission === PermissionsAndroid.RESULTS.GRANTED);
            return allGranted;
        } catch (err) {
            console.error(err);
            return false;
        }
    } else {
        return true;
    }
}

function TimbratureButton({ style, title, token, beaconAddress }) {
    const [isScanning, setIsScanning] = useState(false);
    const [foundDevice, setFoundDevice] = useState(false);
    const [bluetoothState, setBluetoothState] = useState('Unknown');
    const manager = new BleManager();
    const [debug, setDebug] = useState("std");

    useEffect(() => {
        const subscription = manager.onStateChange((state) => {
            setBluetoothState(state);
            if (state === 'PoweredOn' && isScanning) {
                startScan();
                subscription.remove();
            }
        }, true);

        return () => {
            subscription.remove();
            if (isScanning) {
                manager.stopDeviceScan();
            }
        };
    }, [isScanning]);

    useEffect(() => {
        const checkPermissions = async () => {
            const hasPermissions = await requestPermissions();
            if (!hasPermissions) {
                console.error('Required permissions not granted.');
                setDebug('Permissions not granted');
            }
        };
        checkPermissions();
    }, []);

    const sendToken = () => {
        console.log("Sending through axios.post: ", token);
        axios.post("CENSORED", {
            valoriPost: [],
            token: token
        });
    };

    const startScan = () => {
        console.log('Starting scanning...');
        setDebug("ScanStart");
        manager.startDeviceScan(null, { allowDuplicates: true }, (error, device) => {
            if (error) {
                console.error('Scan error: ', error.message);
                setDebug(`ScanErr: ${error.message}, state: ${bluetoothState}`);
                setIsScanning(false);
                return;
            }
            console.log(device.id);
            for (let i = 0; beaconAddress[i]; i++) {
                if (device.id === beaconAddress[i].MacAddress) {
                    console.log("Beacon found: ", device.id);
                    setDebug("BeaconFound");
                    manager.stopDeviceScan();
                    setIsScanning(false);
                    setFoundDevice(true);
                    sendToken();
                    break;
                }
            }
        });

        setTimeout(() => {
            setDebug("Timeout");
            manager.stopDeviceScan();
            setIsScanning(false);
            setFoundDevice(false);
        }, 60000);
    };

    const handleSearch = async () => {
        console.log("isScanning: ", isScanning);
        console.log("token: ", token);
        console.log("beaconAddress: ", beaconAddress);
        setDebug("ScanInit");

        if (!isScanning && token && beaconAddress[0] && beaconAddress.length) {
            setIsScanning(true);
            setFoundDevice(false);

            if (bluetoothState === 'PoweredOn') {
                startScan();
            } else {
                setDebug("Waiting for Bluetooth to power on");
                console.log("Waiting for Bluetooth to power on");
            }
        } else {
            setDebug("DataMissing - isScanning: " + isScanning + " token: " + token + "beaconAddress[0]: " + beaconAddress[0]);
            console.error("Device scan didn't start because some data is missing");
        }
    };

    return (
        <>
            <Text>{debug}</Text>
            <Text>|</Text>
            <Text>|</Text>
            <Text>|</Text>
            <Text>|</Text>
            <Text>|</Text>
            <Text>|</Text>
            <Text>|</Text>
            <Text>|</Text>

            <TouchableOpacity
                onPress={handleSearch}
                style={[
                    styles.button,
                    isScanning ? styles.scanningButton : foundDevice ? styles.foundButton : styles.normalButton,
                    style
                ]}
                disabled={isScanning}
            >
                {isScanning ? (
                    <ActivityIndicator size="small" color="#000000" />
                ) : foundDevice ? (
                    <Text style={styles.text}>Beacon trovato!</Text>
                ) : (
                    <Text style={styles.text}>{title}</Text>
                )}
            </TouchableOpacity>
        </>
    );
}

const styles = StyleSheet.create({
    button: {
        paddingVertical: 12,
        paddingHorizontal: 20,
        borderRadius: 25,
        alignItems: 'center',
        justifyContent: 'center',
        elevation: 2,  // Android shadow
        shadowOpacity: 0.2,  // iOS shadow
        shadowRadius: 4,
        shadowOffset: { height: 2, width: 0 },
        margin: 10,
    },
    scanningButton: {
        backgroundColor: '#FFFF00', // Yellow when scanning
    },
    foundButton: {
        backgroundColor: '#008000', // Green when a device is found
    },
    normalButton: {
        backgroundColor: '#007AFF', // Blue when normal
    },
    text: {
        color: '#FFFFFF',
        fontSize: responsiveFontSize(2),
        fontWeight: '600',
    },
});

export default TimbratureButton;

Ok, so I little simplified your example for faster reproduction and I manage to make it work. Mainly I moved the initialization of BleManager outside of React. Let me know if it helped you
import React, { useState, useEffect } from 'react'
import { TouchableOpacity, Text, StyleSheet, ActivityIndicator, PermissionsAndroid, Platform } from 'react-native'
import { BleManager } from 'react-native-ble-plx'
// import { responsiveFontSize } from 'react-native-responsive-dimensions'
// import axios from 'axios'

async function requestPermissions() {
  if (Platform.OS === 'android') {
    try {
      const granted = await PermissionsAndroid.requestMultiple([
        PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
        PermissionsAndroid.PERMISSIONS.ACCESS_COARSE_LOCATION,
        PermissionsAndroid.PERMISSIONS.BLUETOOTH_SCAN,
        PermissionsAndroid.PERMISSIONS.BLUETOOTH_CONNECT
      ])
      const allGranted = Object.values(granted).every(permission => permission === PermissionsAndroid.RESULTS.GRANTED)
      return allGranted
    } catch (err) {
      console.error(err)
      return false
    }
  } else {
    return true
  }
}

const manager = new BleManager() // it should be a singleton (initialized once for whole app), it can't be place inside of React tree (components, hooks etc.)

export const TimbratureButton = ({ style, title, token }) => {
  const [isScanning, setIsScanning] = useState(false)
  const [foundDevice, setFoundDevice] = useState(false)
  const [bluetoothState, setBluetoothState] = useState('Unknown')
  const [debug, setDebug] = useState('std')

  useEffect(() => {
    const subscription = manager.onStateChange(state => {
      setBluetoothState(state)
      // if (state === 'PoweredOn' && isScanning) {
      // start scanning if it's not already running - before caused duplicated scanning
      if (state === 'PoweredOn' && !isScanning) {
        console.log('Bluetooth is powered on, starting scan...')
        startScan()
        subscription.remove()
      }
    }, true)

    return () => {
      subscription.remove()
      if (isScanning) {
        manager.stopDeviceScan()
      }
    }
  }, [isScanning])

  useEffect(() => {
    const checkPermissions = async () => {
      const hasPermissions = await requestPermissions()
      if (!hasPermissions) {
        console.error('Required permissions not granted.')
        setDebug('Permissions not granted')
      }
    }
    checkPermissions()
  }, [])

  const sendToken = () => {
    console.log('Sending through axios.post: ', token)
    // axios.post('CENSORED', {
    //   valoriPost: [],
    //   token: token
    // })
  }

  const startScan = () => {
    console.log('Starting scanning...')
    setDebug('ScanStart')
    manager.startDeviceScan(null, { allowDuplicates: true }, (error, device) => {
      if (error) {
        console.error('Scan error: ', error.message)
        setDebug(`ScanErr: ${error.message}, state: ${bluetoothState}`)
        setIsScanning(false)
        return
      }
      console.log(device.id)
      // for (let i = 0; beaconAddress[i]; i++) {
      // if (device.id === beaconAddress[i].MacAddress) {
      if (device && device.name === 'Galaxy M31') {
        console.log('Beacon found: ', device.name)
        setDebug('BeaconFound')
        manager.stopDeviceScan()
        setIsScanning(false)
        setFoundDevice(true)
        sendToken()
        // break
        // }
      }
    })

    setTimeout(() => {
      setDebug('Timeout')
      manager.stopDeviceScan()
      setIsScanning(false)
      setFoundDevice(false)
    }, 60000)
  }

  const handleSearch = async () => {
    console.log('isScanning: ', isScanning)
    console.log('token: ', token)
    setDebug('ScanInit')

    if (!isScanning && token) {
      setIsScanning(true)
      setFoundDevice(false)

      if (bluetoothState === 'PoweredOn') {
        startScan()
      } else {
        setDebug('Waiting for Bluetooth to power on')
        console.log('Waiting for Bluetooth to power on')
      }
    } else {
      setDebug('DataMissing - isScanning: ' + isScanning + ' token: ' + token)
      console.error("Device scan didn't start because some data is missing")
    }
  }

  return (
    <>
      <Text>{debug}</Text>
      <Text>|</Text>
      <Text>|</Text>
      <Text>|</Text>
      <Text>|</Text>
      <Text>|</Text>
      <Text>|</Text>
      <Text>|</Text>
      <Text>|</Text>

      <TouchableOpacity
        onPress={handleSearch}
        style={[
          styles.button,
          isScanning ? styles.scanningButton : foundDevice ? styles.foundButton : styles.normalButton,
          style
        ]}
        disabled={isScanning}
      >
        {isScanning ? (
          <ActivityIndicator size="small" color="#000000" />
        ) : foundDevice ? (
          <Text style={styles.text}>Beacon trovato!</Text>
        ) : (
          <Text style={styles.text}>{title}</Text>
        )}
      </TouchableOpacity>
    </>
  )
}

const styles = StyleSheet.create({
  button: {
    paddingVertical: 12,
    paddingHorizontal: 20,
    borderRadius: 25,
    alignItems: 'center',
    justifyContent: 'center',
    elevation: 2, // Android shadow
    shadowOpacity: 0.2, // iOS shadow
    shadowRadius: 4,
    shadowOffset: { height: 2, width: 0 },
    margin: 10
  },
  scanningButton: {
    backgroundColor: '#FFFF00' // Yellow when scanning
  },
  foundButton: {
    backgroundColor: '#008000' // Green when a device is found
  },
  normalButton: {
    backgroundColor: '#007AFF' // Blue when normal
  },
  text: {
    color: '#FFFFFF',
    // fontSize: responsiveFontSize(2),
    fontSize: 20,
    fontWeight: '600'
  }
})

Perfect, now it's working fine. Thank you very much.
Can I ask you one more thing? On Android it was working even before this fix and the console.log(device.id) was printing all the devices he was finding. The problem I have now is that it doesn't find MY ble beacon, even if I check every single Mac address and even if I let him scan for minutes. I can't really understand why my android 11 finds it in few seconds with the same app, while my android 14 and now my iOS 17.5.1 doesn't. The main differences I found are the permissions but I don't think this is the case because the scan shouldn't start at all. Do you have any idea of some reasons that can cause this? I have thought about incompatible bluetooth, but, correct me if I'm wrong, newer bluetooth versions can scan older ones.
This is the ble beacon I'm testing on:
amazon.it link
I know it's not a good beacon, and it has not docs, but I'm not the one who chose it and, anyway, it can be found by my android 11.
Thank you so much again.
Meanwhile I'm still searching solutions, if I find it I'll close the issue.

You are right that permissions won’t matter.
There might be many factors that influence that. The basic one:

device is already connected to OS - make sure that you are not connected with device through OS, because if you are then device won’t be discoverable through the app and you would have to use connectedDevices to find them
not closing connection properly - if you kill the app without closing connection, and reopen app, the device you are trying to connect to will still have it’s connection open (even though you lost it) and because of that won’t be discoverable

I’m not sure about it but you may try setting legacyScan, though it's android only. You may also want to read about advertising in ble, maybe you will find something you can relate to.
Let me know if any of these helps

I used connectedDevices and isDeviceConnected to check if the beacon was already connected and it is not. I don't think the problem is the second one you mentioned because with BLEScanner I can see that the beacon is not already connected to anything (If it was, I shouldn't be able to connect to it). Btw to be sure about this, I connected and disconnected it through BLEScanner before activating the scan, but nothing changed.
legacyScan is true by default. I've tried {legacyScan: false, scanMode: 'LowLatency'} and different scanMode(s) but no result.
I'm sorry to bother you, I'm trying to fix this for many days and now I don't even know where to turn. I really can't understand why on android 11 it finds my beacon while on iOS and android 14 it is not. Same app, same code, all permissions. Can it be a problem the fact that I'm using device.id instead of device.name or UUIDs? I don't think so because for each device I use console.log("Detected device:", device.id, device.name, device.rssi); and it finds them even on android 14.
Thank you again.

I'll create another issue and close this one, because I think that now the problem in unrelated to the main issue.
Thank you for helping me solve this issue.


[Feat]: Need Update the category filter layout and design change to multiselect filter with improved UI

What feature?
I have an idea since we know there will be times when the ProjectHub may have multiple category tech stack eg suppose it may have Machine Learning,  Artificial Intelligence,  Object Detection, Reinforcement Learning etc
Might the whole hero section will be filled with tech stack only so we can have either a scrollable/expendable multi select tech stack design?
Because maybe the student might use more than one tech stack such as react and MongoDB so give the multi select option to filter the projects

Add screenshots
Just I am giving an example from a famous website ie leetcode.com
Note: Forgot the button styles and content

Here we can add a button to sort on the basis of maximum project repository stars and there should be  a button to expand other tech stack details view
A search box to search the required tech stack query by the user and the multi-select option to filter the tech stack

@swapnilgarg7 @priyankarpal
Code of Conduct

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

yes someone is working on that feature & will add in a few days with search bar https://github.com/priyankarpal/ProjectsHut/issues/400


$theme-colors not works

I am following the documentation but it seems that it cannot register the variables that I add ...
the code I am using is the following:

@import "../node_modules/bootstrap/scss/functions";

// override rules

@import "../node_modules/bootstrap/scss/variables";
@import "../node_modules/bootstrap/scss/mixins";
@import "../node_modules/bootstrap/scss/utilities";

$custom-colors: (
    "custom-color": #900
);

$theme-colors: map-merge($theme-colors, $custom-colors);

@import "../node_modules/bootstrap/scss/root";
@import "../node_modules/bootstrap/scss/reboot";
@import "../node_modules/bootstrap/scss/type";
@import "../node_modules/bootstrap/scss/images";
@import "../node_modules/bootstrap/scss/containers";
@import "../node_modules/bootstrap/scss/grid";

body {
    background-color: $custom-color;
}

throws the following error:

Well, you never declared a new $custom-color variable.
If you add your color to the $theme-colors map directly, then you should get it from the map : map-get($theme-colors, "custom-color").
If you want to use it the way you do, declare it first: $custom-color: #900. Then you can add it to the $theme-colors.
I hope it helps 🙂

@ffoodd ty for your support !


Fix typo

Changed "call our" to "call out".

This project was ditched like three years ago.

Thanks, I saw that after I submitted the PR. Closing.


Test event forwading

Like: state.Update(incomingEvent);

for event forwading, we need to avoid use the same event because of reusing references


Spelling error in historical() function

hey thanks , it was during night i typed this , i will fix it in a while

Thanks @Anish-Shobith - nice API :)


Java-style @annotations for user-guided optimization

Rendered version here: https://github.com/WardBrian/design-docs/blob/annotations/designs/0033-declaration-annotations.md
This is an idea @rok-cesnovar and I have been discussing on and off for a while. The basic summary is allowing (completely optional) annotations like
functions {
  @foo void bar(int x){...}
}
parameters {
  @baz matrix[3,3] A;
}

Individual interfaces/settings could then define specific annotations they would like to use, such as a @gpu annotation used for OpenCL optimizations. The key idea is that unknown/unused annotations are safely ignored, so a model which uses them could still be compiled by a backend or mode which doesn't use them.

I sent these comments earlier this month but there was some kind of awkward conflict between gmail and github preventing it from being received.
Two comments:
There were long discussions about annotations/decorators in the past and one aspect about which I am still a bit squeamish is the ultimate scope of annotations.  Most of the annotations presented as examples concern how a Stan program is transpiled into a C++ program and finally compiled into an executable, all of which is within a common scope.  I have no problems there.  The @silent annotation, however, influences how the Stan program can be used by a Stan interface which breaks the current compartmentalization.  Right now a Stan program simply defines necessary input data and a target distribution and its gradient that can be queried on demand, with the interfaces entirely responsible for how that Stan program is used.  In other words at the moment I can fully understand how a Stan program will be used by looking at how the stan call is configured in the interface, but with annotations like @silent I would have to also consult the Stan program to understand what will happen.
I also worry if the annotation syntax might be too easy for users to confuse with types.  I understand that the proposed style is becoming conventional but I wonder if a style with opening and closing escapes, for example @foo@ instead of @foo would be more easily interpretable because they superficially mimic inline comments.  Syntax highlighters would also be able to color these annotations differently to visually separate them out from the type definition (although I guess syntax highlighters would be smart enough to highlight the annotations regardless of escape).

I agree @betanalpha - I mentioned @silent mainly as I stumbled across the idea in the old working repository for the first versions of stanc3, but it is a different kind than the others proposed. I am not sure how it would need to be implemented, but if it is as you say where there is no simple way of avoiding it without changing the semantics, then I agree it is not a good fit for this proposal, or would at least warrant a design doc of its own right before being implemented.
I also agree with @rok-cesnovar - this proposal is not saying we will implement all of the the possible options the system allows. The core idea is to allow backend-specific, user-directed program optimization without dragging those details into the core language, which would be a win for end users and for the language maintainers.
As an aside, I am struggling to use terminology for "user directed optimization" which cannot be confused for optimization, the inference technique. Suggestions welcome

During today's language meeting @bob-carpenter made the point that something like static / const is probably better off being a core feature of the language, so that we can enforce it in the typechecker and encourage a more functional style (especially if we implement comprehensions and lambdas). He agreed this was the right solution for something like @gpu
Also discussed was the use of @likely and @unlikely on integer declarations which directly translate to the C++ equivalent when used in conditionals. This could be useful for models like those used in brms/rstanarm which use data integers as flags for different computation

Given how hard it will be to separate out the general design of annotations from the particular effects of certain annotations, in particular ensuring compatible effects across multiple annotations, I wonder if it would be most productive to

Agree upon the general annotation style (there don't seem to be any complaints against the style suggested in the RFC).
Pick out one annotation to start with, implementing it both in the language and the compiler, and then rolling out documentation and updated based on user feedback.
Adding new annotations one at at time, with each new annotation considering potential conflicts with the existing annotations.

The sequence of annotations considered will of course be arbitrary but it seems like there is some low hanging fruit (static or const for example) that could be prioritized to get useful features in reasonably quickly while also providing a test bed for the implementation of other annotations.

@betanalpha:  That's the plan.  This spec isn't about any particular annotation, just the general scheme.  I suggested it'd be helpful to have some examples in a bit more detail to help understand the general spec, but this spec isn't about those examples.

Just to echo, that is the proposed way forward. I think a good choice for the first would be @gpu, since I know @rok-cesnovar has been wanting to work more on the OpenGL optimizations.

Agreed. This is a general way to support context-specific demands. Another example came to mind is augmented output of ODE solution process.

Just to echo, that is the proposed way forward. I think a good choice for the first would be @gpu, since I know @rok-cesnovar https://github.com/rok-cesnovar has been wanting to work more on the OpenGL optimizations.

Sounds good, although I think that it would be helpful to add a just few sentences explicitly mentioning this in the design doc to avoid any confusion.  For example “The presence of annotations signals the compilers to transform the program while maintaining the inputs and outputs up to floating point precision.  Particular annotations will be introduced one at a time, and existing annotations will take precedence over new annotation if there are any conflicts between the effects of a new annotation transformation and the existing annotation transformations.”  Just so that there’s an explicit procedure for introducing new annotations and managing any conflicts that might arise.

@betanalpha I've added a version of your wording to the design doc. Thank you for the suggestion

I want to add that this could open up our constraint transforms to have methods. Not sure what the implementation would look like exactly but here's a possible example
unit_vector[N] uv1 @hyperspherical;
unit_vector[N] uv2 @muller;  // or whatever we call the current implementation from https://dl.acm.org/doi/10.1145/377939.377946
unit_vector[N] uv3; // this uses the "default"

I think something like that would deserve it’s own language feature

I think something like that would deserve it’s own language feature

Agreed; to this point all constrained types have been implemented with a single transformation.  Exposing multiple transformations would be a much larger conversation (multiple types, types with annotations, etc) especially for transformations that aren’t complete isomorphisms (the hyper spherical transformation in the unit_vector case).

I am bumping this to see if there are further comments and if someone would like to serve as the reviewer for this topic.
@rok-cesnovar and I have recently been discussing some alternatives to the currently fairly-brittle external C++ features exposed by cmdstan, and the @extern annotation on functions mentioned as an example here would serve this purpose very well.

the currently fairly-brittle external C++ features exposed by cmdstan

I'm unclear on what it means to have external C++ features exposed by CmdStan.  You mean the makefiles and their config?  Otherwise, it feels like a command-line interface through files without any C++ to be seen.  Also, how does this relate to annotations, which is what this pull request is about.  I don't get the connection to @extern.
So at least as of now, I don't think I could review this.  Instead, I'd like to sit down and talk to @rok-cesnovar and @WardBrian about the intended scope, as it's very unclear to me from the examples being discussed in this GitHub conversation.

I'm unclear on what it means to have external C++ features exposed by CmdStan.

CmdStan supports the user supplying a function definition as a C++ header file: https://mc-stan.org/docs/cmdstan-guide/using-external-cpp-code.html
But, the way this is currently implemented in CmdStan means that it breaks every time we change how the signatures are generated (see https://github.com/stan-dev/cmdstan/issues/1119), and has other annoyances like the user's code being outside the model namespace.
If we had the ability to annotate an individual function spec with @external("foo.hpp"), for example, it would allow us to place the contents of foo.hpp inside the model namespace where that function would normally have it's code generated. This is only tangentially related to the proposal (and accepting this proposal would not mean we 100% were going to do that annotation), I only brought it up as motivation for why I am reviving this thread.

Yikes---I forgot about that feature that got ported over from RStan.  That is a real maintenance nightmare, especially given how much the math library coding conventions keep changing.

Yes, it is difficult, especially since the current state of things mandates that you use the require_* template arguments, since we generate a C++ declaration for the function anyway. By labeling it as external we could skip generating anything for that function, and then you as the user should be able to supply any C++ function which can be called with the required arguments, rather than one which fits exactly the spec we use ourselves.
That is all probably best left for a separate discussion, though! I really just meant it as a motivating reason and possibly an early use of this concept

Completely unrelated to the design-doc discussion here, but could the external c++ issue be solved by not generating the "placeholder" c++ for undefined Stan functions (rather than requiring the --allow-undefined flag and generating the empty signature)?
Completely off-topic, so feel to move this question to a different issue/discussion

Just to quickly say: yes, that’s possible, though it requires either marking during typechecking which declarations got definitions eventually, or re-checking that during code gen (which turns into one of those “accidentally O(n^2)” situations if you’re not careful). An annotation or anything else which gives us that information locally/explicitly avoids that
Maybe someone is relying on the current behavior though, so the annotation is also nice because it is an opt-in

Ahh makes sense, thanks for clarifying!


evaluate if use the existing reader to save stack depth.

So this assumes nothing will need to use the reader after this point, right?
This seems really fragile.  I'd prefer we use a new reader and file a followup issue to re-evaluate once this code is more fleshed-out and stable whether reuse makes sense then.
Originally posted by @bzbarsky-apple in https://github.com/project-chip/connectedhomeip/pull/5198#discussion_r593485988

This is probably fine now: the two readers are never on-stack at the same time, so the compiler can reuse the stack itself.


R1.9 rocm release branch

NOT for a merge, this PR is to kick off CI

some renaming were not completed:
ERROR: /workspace/tensorflow/core/grappler/optimizers/BUILD:689:1: name 'tf_cuda_cc_test' is not defined (did you mean 'tf_gpu_cc_test'?)
ERROR: package contains errors: tensorflow/core/grappler/optimizers
ERROR: /workspace/tensorflow/compiler/tests/BUILD:831:1: unexpected keyword 'deps' in call to gpu_py_test(name, srcs, size = "medium", data = [], main = None, args = [], shard_count = 1, additional_deps = [], tags = [], flaky = 0, xla_enabled = False, grpc_enabled = False)
ERROR: /workspace/tensorflow/compiler/tests/BUILD:844:1: name 'cuda_py_test' is not defined (did you mean 'gpu_py_test'?)
ERROR: /workspace/tensorflow/compiler/tests/BUILD:876:1: name 'cuda_py_test' is not defined (did you mean 'gpu_py_test'?)
ERROR: package contains errors: tensorflow/compiler/tests
ERROR: /workspace/tensorflow/core/common_runtime/eager/BUILD:181:1: name 'tf_cuda_library' is not defined (did you mean 'tf_gpu_library'?)
ERROR: package contains errors: tensorflow/core/common_runtime/eager
ERROR: /workspace/tensorflow/contrib/eager/python/examples/l2hmc/BUILD:5:1: file '//tensorflow:tensorflow.bzl' does not contain symbol 'cuda_py_test' (did you mean 'tf_py_test'?)
ERROR: /workspace/tensorflow/contrib/eager/python/examples/l2hmc/BUILD:29:1: name 'cuda_py_test' is not defined

@whchung this branch is not completed yet, I'm still working on cherry-picking PRs to this branch.

jenkins:  retest this please


add support for jasmine.any

Description of the Change
Add back support for jasmine.any
Benefits
jasmine.any can be used in tests
Possible Drawbacks
none

sorry this is the wrong place to fix this

never mind this actually is probably the best way to fix this

still in needs-review

:wave: Hi @UziTech: Thanks for this pull request. When you have a moment, can you describe the process you followed to verify that your change has the desired effects?
Note: This information is something we've started requesting as part of the pull request template, but your pull request was opened prior to that change to the template. Nevertheless, it would be a big help if you could add this info to the pull request body.
Thanks for your help!

I added a test


Add locale identifier, platform wrapper versions, update x-platform

Changes in this pull request

SW-2900: Adds Superwall.instance.localeIdentifier as a convenience variable that you can use to dynamically update the locale used for evaluating rules and getting localized paywalls.
SW-2918: Adds platform wrapper version
SW-2926 && SW-2826: Set platform header to Android

Checklist

[ ] All unit tests pass.
[ ] All UI tests pass.
[ ] Demo project builds and runs.
[ ] I added/updated tests or detailed why my change isn't tested.
[ ] I added an entry to the CHANGELOG.md for any breaking changes, enhancements, or bug fixes.
[ ] I have run ktlint in the main directory and fixed any issues.
[ ] I have updated the SDK documentation as well as the online docs.
[ ] I have reviewed the contributing guide

Is X-Platform-Wrapper added to the header? Also I don't see the change to Android in the header either

Is X-Platform-Wrapper added to the header? Also I don't see the change to Android in the header either

Yup, X-Platform-Wrapper was already in the header. Weird, was 100% sure I commited the change, maybe I did something foolish instead 🤔 Added it now


Allow ssl connections for newer Senec devices

Hi,
I am proposing this change to be able to use with newer Senec devices. Yes, downloading the ssl certificate and importing it would be better, but for most home users this should be enough. :)
Running something like:
poetry run senec --host https://192.168.XXX.XXX
now runs properly, my goal is to set this url in the Home Assistant Integration, this would be the smalles necessary change to get ssl working...

-> I am not an experienced python developer... But there seem to be some issues with building this project with newer python versions. I could fix it by forcing python <= 3.8 and limiting cython to <3.

Would be nice to get this in. My system updated this week and HA can no longer access/query status. Let me know if I can help with testing.

Would be nice to get this in. My system updated this week and HA can no longer access/query status. Let me know if I can help with testing.

I have it working with Home Assistant, with 2 minor fixes on the Integration to support the non verified ssl it works, alternatively it would be possible to download the Senec certificates and install them, however it is questionable if it makes sense on a home network to do all the certificate management...

Would be nice to get this in. My system updated this week and HA can no longer access/query status. Let me know if I can help with testing.

BTW, today I noticed that the STATISTIC object is always empty, no idea what happened, it was working fine, will be monitoring this in the following days...


Add possibility to enable/disable RAG on KB (reduce costs)

Closing feature with these commits:

ad898145b6e3bb8b26d4b2738ede68b7f6235ef4
e2e9c558c104e94592c5c1806bf39373a7d6fcb9


Error while convert custom object detection (darknet yolov4) from onnx to trt. AttributeError: 'NoneType' object has no attribute 'serialize'

Hi!
Follow your demo#5 to convert my own custom object detection (yolov4 darknet) with 1 class, but get error, while use python3 onnx_to_tensorrt.py --model yolov4-416:

Loading ONNX file from path yolov4-416.onnx...
Beginning ONNX file parsing
Completed parsing of ONNX file
Building an engine; this may take a while...
[TensorRT] ERROR: ../builder/cudnnBuilderWeightConverters.cpp (541) - Misc Error in operator(): 1 (Weights are outside of fp16 range. A possible fix is to retrain the model with regularization to bring the magnitude of the weights down.)
[TensorRT] ERROR: ../builder/cudnnBuilderWeightConverters.cpp (541) - Misc Error in operator(): 1 (Weights are outside of fp16 range. A possible fix is to retrain the model with regularization to bring the magnitude of the weights down.)
Completed creating engine
Traceback (most recent call last):
File "onnx_to_tensorrt.py", line 121, in
main()
File "onnx_to_tensorrt.py", line 117, in main
_ = build_engine(onnx_file_path, engine_file_path, args.verbose)
File "onnx_to_tensorrt.py", line 96, in build_engine
f.write(engine.serialize())
AttributeError: 'NoneType' object has no attribute 'serialize'

I also try convert to onnx using that:
python3 yolo_to_onnx.py --model yolov4-416 --category_num 1
May you advise something to resolve this issue?
P.S. try that config and weights on colabs (darknet yolo) and inference work ok.

[TensorRT] ERROR: ../builder/cudnnBuilderWeightConverters.cpp (541) - Misc Error in operator(): 1 (Weights are outside of fp16 range. A possible fix is to retrain the model with regularization to bring the magnitude of the weights down.)

The "Weights are outside of fp16 range" error means that your trained model contains at least 1 weight (or a trainable parameter of a layer) which is fine in FP32 format but is too large to be represented in FP16 format.  There are 2 ways you could try to get around this:

Run TensorRT in FP32 mode (would be slower than FP16).  You could do that by setting builder.fp16_mode = False (here) and re-run "onnx_to_tensorrt.py".

Re-train your custom model with a higher weight decay value.  Hopefully, your re-trained custom model wouldn't contain weights which are outside of FP16 range then.


Possible BUG

rling.exe 'C:\Users*\Downloads\HashesOrgLeaks.txt' 'D:\Vault\Warehouse\Wordlists\HashesOrgLeaks-sorted.lst'
Reading "C:\Users*\Downloads\HashesOrgLeaks.txt"...26507106430 bytes total in 141.8828 seconds
Counting lines...    Final Sortlist shrink failed
This means we read all<PHONE_NUMBER>0 bytes of the input file,
and were able to create the sortlist for all<PHONE_NUMBER> lines we found
Likely, there is a bug in the program.
If you need a log file to find the actual log, please tell me where to find it and I would send it asap.
------EDIT------
Forgot to mention that the file a 24,6 GB (26.507.108.352 byte) Wordlist and I have 16GB of 2666MHz ram

That would be why.  Windows does not handle memory particularly well.  Increase the amount of RAM in your system, or split the file so it is smaller.

I recreated the file and re-ran rling and it worked. What could it be?
Also i notice that with large file the normal mode takes a very long time, while the file mode (-f) does the sort and dedupe very fast. What can be the problem?

Windows does not handle memory particularly well.  Increase the amount of RAM in your system, or split the file so it is smaller.  -f is a workaround for "not enough memory".  Add memory to your system.


Clicking a link in the message feed defocuses the compose box

If you click a link in the message feed to another site, the compose box loses focus, which is slightly annoying if you're consulting some linked-to resource as part of drafting a reply.
I suspect this is effectively a bug in how we fixed the earlier issue that clicking a link in the message feed would focus the link (causing enter to re-open the link).

@LiuzcEECS can you claim this task by commenting @zulipbot  claim?

@zulipbot  claim

@timabbott Can you tell me the number of the earlier issue that clicking a link in the message feed would focus the link? I'd like to modify the same file as the eariler issue

@LiuzcEECS can you comment @zulipbot claim again. It seems like your initial comment had two spaces in between.

You might want to look at this commit: https://github.com/zulip/zulip/commit/6ed7ba8935f72f24dbd5936b33e4d7af6ea5d97d

@zulipbot claim

I'm still on it and waiting for review

Hey @LiuzcEECS , mind opening a pull request with the changes you made to solve this issue?

@synicalsyntax  Thank you for comment, I've already opened a pull request but it has been reviewed for two months.

Hm, looks like you were waiting on some help on getting some issues in your pull request resolved. Perhaps you'll want to visit the Zulip development community and ask for some help resolving those issues?

@synicalsyntax Thank you for your advice, I will visit the community and ask for some help.

Hm, issue seems to have been resolved; tested both on master and Zulip community server, compose box doesn't disappear when clicking on message feed links while compose box is open
Corresponding code in static/js/click_handlers.jscorrects this behavior as follows:
if (compose_state.composing() && !$(e.target).is("a") &&
            ($(e.target).closest(".overlay").length === 0) &&
            window.getSelection().toString() === "" &&
            ($(e.target).closest('.popover-content').length === 0)) {
            compose_actions.cancel();
        }

Closing now :)

@synicalsyntax the issue is the loss of focus (rather than the compose box disappearing), which is still happening for me on Chrome on Linux.

Sorry, misunderstood the scope of the issue. Opened #6425 to resolve this though


Included website link

Included website link in README and a sentence in the contribution section about checking out the website first before contributing.

No need of this. The website link is already accessible. Thank  you.


gateway-api: fixed RequestRedirect picks wrong port with multiple listeners

Fixes: #29099
If RequestRedirect does not specify a port. The port of the listener is used by default.
gateway-api: fixed RequestRedirect picks wrong port with multiple listeners

Before:
https://github.com/cilium/cilium/issues/29099#issuecomment-1831885873
After:

/CC @sayboras PTAL.

/test

/ci-gateway-api

/ci-gke

/ci-clustermesh

/test

/ci-ginkgo

/ci-eks

/ci-ginkgo

/ci-ginkgo

@sayboras @chaunceyjiang I've attempted to backport this to v1.15, but the unit test is failing and I lack the domain knowledge to fix it. Marking as "backport/author", i.e. asking one of you to backport this to v1.15 yourselves (or removing the "needs backport" label.

sure, thanks for the ping. I have a few more lined up related to Gateway API backport, will bundle all of them together in on backport PR.


Rduncan rebus

Associated Issue: #121
Summary of Changes

adds new REbus

Made requested changes to my words array.

Nice, thank you!


Angular example to custom API on B2C

Hello, thank you for this article. I'd like to request a similar guide using a modern Angular SPA connecting to a user's API, all hosted by B2C. Angular is by far the most popular framework and a SPA to a RESTful API is the most popular architecture, so I think the audience is there. Thanks!

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

ID: 4c6d2219-cb28-5527-1079-6e3195cad282
Version Independent ID: 70c2aad0-6883-51a9-fed7-01be62302483
Content: Azure AD v2.0 JavaScript single-page application (SPA) guided setup
Content Source: articles/active-directory/develop/tutorial-v2-javascript-spa.md
Service: active-directory
GitHub Login: @andretms
Microsoft Alias: andret

@JTNichols
Thanks for your feedback! We will investigate and update as appropriate.

@JTNichols - Thank you for the request. I've opened DevOps user story #633717 and assigned it to our PM for consideration for a future release.

Not a doc bug so I've opened a user story to track the ask separately as it's for a new sample and accompaying guide.
#please-close


CMake support for Xilinx MicroZed

I was wondering when the Xilinx MicroZed board will support CMake, is that planned for the near future? What would be needed to support CMake?

@cdelledonne
Currently, we don't have a plan to support CMake for Xilinx MicroZed  in near future. We faced some challenges in the past, trying to make  XSDK( Xilinx Software Development Kit) IDE steps work with CMake for building the project. One of the issue was to program the FPGA binary as mentioned here via CMake commandline. Also we found other issues having a command line tool to flash the binary onto device.

@ravibhagavandas ACK!

I am closing this issue. Feel free to re-open if you have additional questions.

@ravibhagavandas I've started to look into this again today, here are my findings.
It seems that Xilinx has moved from XSDK to Vitis Unified Software Platform. To begin with, I would think that the MicroZed Getting Started Guide should be updated.
The installation of Vitis includes the Xilinx Software Command-Line Tool (XSCT), through which I've managed to program the target FPGA and upload the binary onto the device. The xsct utility is in <path_to_vitis>/<version>/bin/xsct, so I guess to make it work with your CMake framework one should either have that in their PATH, or pass some command-line options to specify the path as it's done with the toolchain (-DAFR_TOOLCHAIN_PATH).
xsct can be run as an interactive tool, or passed a Tcl script as input. What has worked for me is running xsct myscript.tcl, with myscript.tcl being the following Tcl script, which contains commands to connect to the target, program the FPGA, initialize the PS and upload the binary:
# Connect to local hw_server
connect
# Select target based on name
targets -set -filter {name =~ "ARM Cortex-A9 MPCore #0"}
# Reset the system before initializing the PS and configuring the FPGA
rst
# Configure the FPGA with the bitstream (not provided in amazon-freertos?)
fpga /path/to/project/hw/somename.bit
# Source the ps7_init.tcl script and run ps7_init and ps7_post_config commands
source /path/to/project/hw/ps7_init.tcl
ps7_init
ps7_post_config
# Download the binary onto the device
dow /path/to/project/build/example.elf
# Resume the processor
con

I noticed a reset.tcl script in vendors/xilinx/boards/microzed/aws_demos, which is intended to be run with xsct, so it seems that there were some attempts at using xsct. Not sure if that was explored further though.

Some additional feedback regarding the compilation of amazon-freertos for the MicroZed board follows.
I've downloaded the source code from the AWS IoT console, selecting the predefined configuration for the "Microzed Industrial IoT Bundle". All good.
I've tried to run
cmake -DBOARD=microzed -DCOMPILER=arm-gcc -S . -B build

but that resulted in an error, apparently because the following include path
https://github.com/aws/amazon-freertos/blob/76720527c1d0289d6c396f486e258ece4ec0c7cb/vendors/xilinx/boards/microzed/CMakeLists.txt#L115
cannot be found. If I comment this line out, CMake seems to successfully generate the build system.
Another apparent problem is that the pre-compiled libraries in vendors/xilinx/aws_bsp/ps7_cortexa9_0/lib/ seem to be built with some compiler that is not the arm-gcc I want to use. Running make from vendors/xilinx/aws_bsp seems to fix this problem.
Finally, there's one more linker error which I haven't tracked down yet:
.../vendors/xilinx/aws_bsp/ps7_cortexa9_0/lib/libxil.a(inbyte.o) uses VFP register arguments, aws_demos.elf does not

which might be due to both -mfloat-abi=hard and -mfloat-abi=soft linker flags being passed somewhere across the project.

Sorry for the long comment, I hope it can help give some directions to support the CMake framework for the MicroZed. Clearly, I'd be willing to contribute actively if needed.


[id] Deep learning

Mas @GunawanTri bisa cek lagi, saya sudah update

Thank you @gitarja and @GunawanTri for all your work!
@gitarja: it seems there are a few other unresolved discussions left. Please feel free to let me know whenever you are ready for the merge!


missing system database _users

Abstract
I am trying to deploy docker version and I am getting db errors after deploying the container.
Reproducing procedure

Configure LiveSync as in the blog here https://www.blackvoid.club/obsidian-running-sync-engine-via-docker/
Click the deploy button in portainer
docker container is deployed
About two or three seconds later, we got the error Missing system database _users ... .
Replication has been stopped. No files synchronised.

<!-- paste here -->

Obsidian debug info

Debug info
[error] 2024-03-24T04:21:48.391997Z nonode@nohost emulator -------- Error in process <0.355.0> with exit value:
{database_does_not_exist,[{mem3_shards,load_shards_from_db,[<<"_users">>],[{file,"src/mem3_shards.erl"},{line,430}]},{mem3_shards,load_shards_from_disk,1,[{file,"src/mem3_shards.erl"},{line,405}]},{mem3_shards,load_shards_from_disk,2,[{file,"src/mem3_shards.erl"},{line,434}]},{mem3_shards,for_docid,3,[{file,"src/mem3_shards.erl"},{line,100}]},{fabric_doc_open,go,3,[{file,"src/fabric_doc_open.erl"},{line,39}]},{chttpd_auth_cache,ensure_auth_ddoc_exists,2,[{file,"src/chttpd_auth_cache.erl"},{line,214}]},{chttpd_auth_cache,listen_for_changes,1,[{file,"src/chttpd_auth_cache.erl"},{line,160}]}]}
[notice] 2024-03-24T04:21:48.977878Z nonode@nohost <0.402.0> -------- Missing system database _users
[notice] 2024-03-24T04:21:53.393004Z nonode@nohost <0.354.0> -------- chttpd_auth_cache changes listener died because the _users database does not exist. Create the database to silence this notice.
[error] 2024-03-24T04:21:53.394067Z nonode@nohost emulator -------- Error in process <0.503.0> with exit value:
{database_does_not_exist,[{mem3_shards,load_shards_from_db,[<<"_users">>],[{file,"src/mem3_shards.erl"},{line,430}]},{mem3_shards,load_shards_from_disk,1,[{file,"src/mem3_shards.erl"},{line,405}]},{mem3_shards,load_shards_from_disk,2,[{file,"src/mem3_shards.erl"},{line,434}]},{mem3_shards,for_docid,3,[{file,"src/mem3_shards.erl"},{line,100}]},{fabric_doc_open,go,3,[{file,"src/fabric_doc_open.erl"},{line,39}]},{chttpd_auth_cache,ensure_auth_ddoc_exists,2,[{file,"src/chttpd_auth_cache.erl"},{line,214}]},{chttpd_auth_cache,listen_for_changes,1,[{file,"src/chttpd_auth_cache.erl"},{line,160}]}]}

```

Can you login to the web interface of your couchdb instance? If not, then there's your problem. It's not really livesync's fault if your couchdb hasn't got any users...
You can also run /_utils/#verifyinstall to do a cursory test of essential operations.
Btw I'm not seeing which docker is being used in the guide you mention. I'm using the official one and it works fine.

Thank you for opening the issue! And thank you for the support @thany!
Referring to the official doc is surely the right way.
As a convenient note: if single_node is true, _users should be created automatically.
Therefore, that message might not be an actual reason.
Please check the remote database status by using database-checking. It is documented in the Quick Setup.

Same issue running sudo docker run --name couchdb-for-ols --rm -it -e COUCHDB_USER=${username} -e COUCHDB_PASSWORD=${password} -v ${PWD}/couchdb-data:/opt/couchdb/data -v ${PWD}/couchdb-etc:/opt/couchdb/etc/local.d -p 5984:5984 couchdb
It says [notice] 2024-11-13T19:00:07.213026Z nonode@nohost <0.394.0> -------- Missing system database _users
[notice] 2024-11-13T19:00:11.986675Z nonode@nohost <0.353.0> -------- chttpd_auth_cache changes listener died because the _users database does not exist. Create the database to silence this notice.
And then a bunch of errors about databases not existing happen

@vrtmrz I am following the official instructions at https://github.com/vrtmrz/obsidian-livesync/blob/main/docs/setup_own_server.md

I found a fix. I will be adding a pull request for a docker compose file to make this easier to setup


Constraint Doc Improvement Request (and maybe feature)

Reading this https://docs.gradle.org/current/userguide/managing_transitive_dependencies.html
   constraints {
        implementation('org.apache.httpcomponents:httpclient:4.5.3') {
            because 'previous versions have a bug impacting this application'
        }
        implementation('commons-codec:commons-codec:1.11') {
            because 'version 1.9 pulled from httpclient has bugs affecting this application'
        }
    }

ok, so do constraint versions fix the actual version, if 4.5.4 of httpclient is out will it still get pulled? how about 4.6? 5?  if not can I write 4.+? what if I want version 4 or later including 5? does 4+ do that?
https://docs.gradle.org/current/userguide/dependency_management_for_java_projects.html according this I'm pretty sure I can't do 4+ even if it were accurate
I actually have a specific problem in regards to this I'm trying to understand the right way to resolve. Some of my test code relies specifically on assertj 3.8+ (including 3.9), I'd like to define my dep accurately as 3.8+ as 3.+ in theory will match a number of versions that wouldn't even compile, I also don't want to restrict to 3.8.+ because I have no reason to.

Thanks for your comment. There are two things that are not clear from our documentation that should make this clearer:

Dependency constraints support dynamic versions (version ranges) just like regular dependencies. So you can use 4.+ if you like.
Gradle support both Ivy-style (4.+) and Maven-style ([4.0, 5.0)) version ranges.

I've raised #5603 to specifically deal with the second point. In the meantime, here are some hints:

4.+ does string matching on the version number, so will match any version that begins with 4.. (Don't use 4+, it never makes sense to match 4.0, 42.3 and 400.3 but not 5.0!)
For your assertj case, try using [3.8, 4.0) to include all versions >= 3.8 and < 4.0.

maybe... but this worked when the version was was on the dependency and there were no constraints.
       static final String LATEST = ":latest.release";
        project.getPluginManager().apply( "org.gradle.java-library" );
        DependencyHandler deps = project.getDependencies();
        deps.add( COMPILE, "com.google.code.findbugs:jsr305" );
        deps.add( TEST_IMPL, "org.junit.jupiter:junit-jupiter-api" );
        deps.add( TEST_IMPL, "org.assertj:assertj-core" );
        deps.add( TEST_RUN, "org.junit.jupiter:junit-jupiter-engine" );

        deps.constraints( dch -> {
            dch.create( "com.google.code.findbugs:jsr305" + LATEST );
            dch.create( "org.junit.jupiter:junit-jupiter-api:5.+" );
            dch.create( "org.junit.jupiter:junit-jupiter-engine:5.+" );
            dch.create( "org.assertj:assertj-core:[3.8,4)" );
        } );

now
$ ./gradlew clean compileJava
> Task :compileJava FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Could not resolve all files for configuration ':compileClasspath'.
> Could not find com.google.code.findbugs:jsr305:.
  Required by:
      project :

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1s

Just like your using dependencies.add() you need to use dependencies.constraints.add. The create method creates a 'detached' constraint, not bound to any configuration.


The real solver

This issue will block #7  and #9
Functionality

[ ] result for both FLD and FLSD
[ ] headless, or at least could be called using golang.
[x] accept command line parameters
[ ] * parallel if possible

Addition

[ ] generate intermediate results, (what I used to print in log for thesis, code is in private gitlab) so #9 can use it.
[ ] * estimate time based on previous results (it might be better to do this in server)

Extend

[ ]  allow extending hardening law and yield function (e... I still remember this after one month \w/)

[ ] change json config file to register
[ ] add matlab code
[ ] run test scripts until they work

for command line arguments, simply assign values when call will create var in workspace and this is accessible by the script. ie
inputFile='E:\workspace\src\github.com\at15\mk-fld\server\a.fldin';logFile='E:\workspace\src\github.com\at15\mk-fld\server\b.log';cd('E:\workspace\src\github.com\at15\mk-fld\src\solver');run('E:\workspace\src\github.com\at15\mk-fld\src\solver\fld_solver_main.m');exit;


Linux direct mode

Why is CI not running?

If there is anything you could merge from this PR before in a separate PR, without breaking the current code, it would be better. That's often what i do for big PRs

If there is anything you could merge from this PR before in a separate PR, without breaking the current code, it would be better. That's often what i do for big PRs

Can't really do that. It'd be really hard to get commits that actually run individually. It would essentially require adapting the old rendering code to the interface (which is what vixea and galister attempted, but couldn't complete). I can split it up into multiple commits of which some only build but don't display an image, but that also wouldn't be multiple prs.

@The-personified-devil Nevermind then, no problem

Any news on this?
I feel it could help a lot with framerate, but I could be wrong

Any news on this?

Still blocked on valve

I feel it could help a lot with framerate, but I could be wrong

not really, except that it fixes reprojection, so kinda yes

not really, except that it fixes reprojection, so kinda yes

Can you please elaborate on that?
Is that the reason I have 36 FPS out of 72 all the time (looking at the graph I see that they are at 36 every other frame), or the reason that I see "jumpbacks" (previous frames sometimes)?


zulip_bots: Check API key on initialization for link_shortener bot.

Issue #171

I had to override the test_bot_responds_to_empty_message in order to not fail any unit tests.
The bot does not exit when wrong API key is used. It just logs the message. If I make it exit, the bot starts failing its unit tests.

@roberthoenig Thanks for your response. Fixing the issues. :-)

@roberthoenig Done!

Merged, after adding some detail to the second commit message. Thanks @ViRu-ThE-ViRuS! You won't see a "Merged" label on this branch because I merged your commits by checking them out in my own branch so I could modify the commit message. You can look in the commit history of python-zulip-api and find your commits there :)


Crashing on winit app close

Describe the bug
I'm not sure if it's a bug or something I'm missing but I get the following crash when I close my winit application via the window close button.
thread 'main' panicked at C:\Users\Brian\.cargo\registry\src\index.crates.io-6f17d22bba15001f\v8-0.99.0\src\isolate.rs:1616:7:
v8::OwnedIsolate instances must be dropped in the reverse order of creation. They are entered upon creation and exited upon being dropped.

To Reproduce
I haven't made a minimal example yet, working on one now. But essentially what I have is a runtime per game object, created at the start of the app. I then hit close on the window, and get this crash. Interestingly enough, when running in debug mode in RustRover, when I hit the stop button it doesn't crash.
Desktop:

OS: Windows

Additional context
Building a custom game engine, loving rustyscript!!!

I believe Its part of deno rusty v8 and cannot be fixed on level of this library.
I did bypass it creating each runtime on a separate process so it can be safely destroyed.

The worker module may be useful to you
It lets the runtime survive in a seperate thread to prevent the need to destroy them
Alternatively, as was already said,
Whenever you destroy created runtimes, you must be sure to drop them newest-to-oldest

Thanks guys, it'll take a bit for me to refactor so I can actually do that reliably but I'd say this is solved for now.


Updated README and environment.yml

This patch helped to resolve issues described in: https://github.com/higlass/scipy19/issues/1

Patch is relevant to discussion on Slack (https://higlass.slack.com/archives/DCE3Q3E3F/p1569363165000500)

Thanks Alex!


Steps 步骤条 中的nzDescription 不能进行换行

I'm submitting a...

[ ] Bug report
[x] Feature request
[ ] Documentation issue or request
[ ] Regression (a behavior that used to work and stopped working in a new release)
[ ] Support request => Please do not submit support request here

Current behavior
Steps 步骤条 中的nzDescription 不能进行换行
Expected behavior

我希望nzDescription 的内容可以按照其html内容展示
Minimal reproduction of the problem with instructions

What is the motivation / use case for changing the behavior?

screenshot:


Use pad count in alloc_filter_pads

It doesn't seem safe to rely on the return value of lib.avfilter_pad_get_name() to iterate. The docs say that it is up to the caller to ensure the index is valid: https://ffmpeg.org/doxygen/trunk/group__lavfi.html#ga2d69631bb24a0a2b7ac0e00fe1dfab3b This seemed to be causing some spurious test errors on some platforms.
Before libavfilter 8.3.100 (ffmpeg < 5.0), the function to use to get the filter count was avfilter_pad_count, but that is now deprecated. We can now use either avfilter_filter_pad_count or use the AVFilter.nb_input (output) fields directly. See https://ffmpeg.org/pipermail/ffmpeg-cvslog/2021-August/128485.html

Looks good, if you can squash down your commits I'm happy to merge it.


Update UG and remove set command in UG for now

Update UG for AddModCommand and RemoveModCommand
Remove Set command from UG for now
Add images for UG

is set


Try a different cargo cacher

Still far from great.. but bevy is switching to this cacher and doesn't seem to be worse so might as well merge


Default network is incorrect on Docker for Windows

Description
When using the container creation view to create a new container, if you create a container by using default values an error is raised: 'network bridge not found'.

Steps to reproduce the issue:

Go to containers
Go to add a container
Use the image microsoft/nanoserver
Select create

The container should be created without issue. The error is related to the bridge network not found, this network is only found on Docker for Linux, default network on Windows is 'nat'.
Technical details:

Portainer version: 1.9.3
Target Docker version (the host/cluster you manage): 1.12.2-cs2-ws-beta
Platform (windows/linux): Windows Server 2016

you can work around this issue by creating a new network called "bridge" using the driver called "nat"... not a fix, a workaround..


⚠ SolarOscp has degraded performance

In 18cef56, SolarOscp ($SOLAROSCP_URL) experienced degraded performance:

HTTP code: 200
Response time: 260 ms

Resolved: SolarOscp performance has improved in fbed9aa.


parse multiline csv into arrays with row numbers

I am pretty new to js coding, but I see that jquery can do the parsing of my data arrays, But how to give the array values an index equal to their row numbers?  If my csv file looks like
av, bv, cv
av bv, cv
etc.
and I want to create values row=1, av(1), bv(1), cv(1);  row=2, av(2), bv(2), cv(2);  etc.
can jquery-cv be used somehow to get the arrays as shown?  My intent is to put the list of strings av() into an options list for a form, and then the user selected value of av() will be associated by use of row number with the values bv() and cv().

This isn't jquery, it's a CSV parser extension pligin for jquery.


P733: a test starts failing

When we introduce the later argument, one test in compile_spec.js starts failing, namely it can be attached on the scope (and it will be failing until page 595).
An easy solution would be to temporarily add a provisional third argument to compile.js: $controller(controllerName, locals, false, directive.controllerAs);.

Added a temporary false


What is WaitToRead()?

Hi,everyone.
The ''this->WaitToRead()'' from NDArray::SyncCopyToCPU(real_t *data, size_t size) const { } takes a long time.However,I don't konw what it is waiting for.
Thanks!

WaitToRead waits until the result of the ndarray is available. This takes a long time because all the computation are asynchronize, and it will block until the computation sequence that get to the result is available

Thanks


Add TCK test for partition override=true

I don't see a TCK test for the setPartitionsOverride(true) behavior, which causes earlier partition executions to be discarded.

This may also have been fixed in:
https://github.com/WASdev/standards.jsr352.jbatch/commit/57fa84b23ea5ced5beed676edf5f634a97f08559
I seem to have thought that when I opened
https://issues.apache.org/jira/browse/BATCHEE-69

Thanks for confirming and commenting.  Cherry-picked into 1.0.x as well.


Fix #257 and minor improvements

Fix for #257
Remove leading whitespaces from "empty" lines and correct indent
Change regex replacement to substring

I should find some time for a release during the weekend. will be 2.1.0 as we change the dependencies altogether and there was at least one new feature of yours. anything else you have in your pipeline, let me know so we coordinate things.

@mkristian: You can have a look at https://github.com/resty-gwt/resty-gwt/pull/264 otherwise nothing more for the weekend. I thought about trying to fix the problem with guava and serialization (issue 266) but not for weekend.


NVM install a ~dir in the current working dir rather than the user's home dir

here is where it installs:

here are the env vars I have played with:

I have tried reinstalling nvm to no avail, also this is a fresh install of el capitan on OSX.

NVM_DIR needs to be a directory, not containing nvm.sh - I usually use export NVM_DIR="$HOME/.nvm" or ~/.nvm.
This looks like a problem with the installation script, not directly with your NVM_DIR. Which command did you use to install nvm?

I used the curl script, I used the one I phased out before to fix this at one point... I will try again tonight. I will respond with my findings TY for the quick response.

Great - please make sure you're using the one from the README, which has the latest version number.
Feel free to delete the literal "~" folder in your home directory too, you shouldn't need that :-)

rm -rf ~ is bad rm -rf ./~ is much better :laughing:
Here is another one... it appears that nvm alias default iojs does not set the default node for my terminal... any ideas?

@chrisamoore wait, one thing at a time :-) did installing the latest nvm fix the problem where it creates a literal ~ directory?

Indeed it did. Thank you for that !!

phew, glad to hear it :-)
I'm closing this, but let's figure out your other issue and decide if we need to file a new one for it. After you run nvm alias default iojs, what does nvm ls output?  Note that you still have to nvm install iojs first, before that will have an effect.

when I get back to this mac I will open the other issue. TY.


fix wrong theme class when logged out if default theme is changed

If you don't use the auto theme as the default, the <html> tag has theme-auto as it's class when users are logged out. This PR changes it to use the correct theme class for the default theme when logged out.

I am a bit conflicted on this, as it means we disrespect the user's preference for the sake of the instance admin's preference.

My apologies, I was referring to a non-logged-in user's preference, as set in their browser or wherever.

Ah, I see. It used to rely on this, but it appears that was changed since then.
My final thought, then, is whether this belongs in a custom template vs in the main codebase.
I think for default installs this would resolve the same, so it may be fine.
@silverwind thoughts on this?


About separate of concerns to make the components easy to reason about

Hi, great job!
I've loved this library and the Singel's concepts, that's really awesome. But there is a concept that I think should be dangerous, like the obligation to pass the style and classNames props up to the parent component.
I think this concept so much rigorous to make your application not scalable. I think it make sense in some cases, but not at all. Sometimes I need to encapsulate the styles of a component and control it by a prop as the article is against.
When you are thinking about the responsibility of the components. When you would like to create the styled components with the characteristics of your application, and you want to give this responsibility just to the styled components, so the styles will be just into the styled component.
The benefits

It keeps you application clear, because you wont use styles in whole application.
When you need to change the style or a behaviour, you will just change a single component.
It fits as a glove about separating presentational and container components

Resume
In my opinion, it would be a bad approach.
// good
const Element = ({ className, ...props }) => (
  <div className={`foo ${className}`} {...props} />
);

// good
const Element = ({ style, ...props }) => (

);

Therefore you are allowing this:
const WrapperContainerComponent = ({ isChecked }) => (
  <Element style={{ padding: 0, backgroundColor: isChecked ? "blue" : "white" }}  />
);

Instead of this:
// Wrapper
const WrapperContainerComponent = ({ isChecked }) => (
  <Element isChecked={isChecked}  />
);

//Styled component
const Element = ({ isChecked }) => (

);

const getStyles = (isChecked) => ({
  padding: 0,
  backgroundColor: isChecked ? "blue" : "white"
})

Hi, @joaolavoier-luizalabs. Thank you very much for your feedback.
I think Singel has nothing to do with the separation of presentational and container components. This actually proposes a separation between presentational components and primitives. This is a pattern for the most abstract level of your component tree.
Your primitives should be flexible enough for your application to scale. This means that when your designer comes up with a new kind of button, for instance, you should be able to easily implement that taking advantage of the current primitives, when possible, and without worrying about breaking other parts of the application.
If you encapsulate your style inside your primitive and make it not extensible, whenever you add a new variant you'll have to update that component.
If you ever scaled an app to a point that several components are depending on another one, which has a bunch of custom props controlling different styles, you know that updating it has a high chance to break something else. Singel just lowers those chances.
That's fine (and actually unavoidable) to have other presentational components that don't follow Singel. I usually create an elements folder with single elements and a components folder with all the other presentational components. I only abstract new single elements from components when I can understand the correct abstraction. This may take time and is usually done in refactors, over time.
That's only my point of view, of course. This discussion is really valuable.

Hi @diegohaz. A really appreciate your fast answer, thanks! :)
Please let me know if I didn't understand correctly.
Container Components
        /|\
         |
Presentational Components
        /|\
         |  <----- Are you talking about this?
         |
Primitive Elements

And it doesn't care about how the presentational components has to be, and the presentational components can has its style encapsulated. It would be about a more generic abstraction, when you want to create a UI library to distribute. Yes, so I agree.
I usually like to create my own UI components with the presentational components, so in order to I use this concepts, will I need to create a most abstract new level of components and use it to create my presentational UI?

Yes, you got it.
Those guidelines really shines on UI libraries. But, in a smaller proportion, every project has its own UI library underneath.
As an example, I was working on a private project with some separate apps, like www, admin and medical. Even though they were being bundled separately, they shared the same UI primitives, with sensible default styles, but flexible enough to accommodate design differences between the apps.
Each app, in turn, had its own small UI library, extending the shared one and applying more specific styles when needed. Being able to also pass new className and style to them was really convenient to, among other things, tweak their style based on a context (a page, for example).

Now I guess I got it. I will study and try to aply this on my own projects.