text:
Issue with SectionList in react naitve

Description
I'm creating a contact page for my react native project
I am using a selection list
my data is more than 1K
when I am scrolling fast up and down it gives me a second blank screen after some seconds data will come
this same issue also face in Flatlist so I'm use Selection List but it also give me same issue
here is more info
Version
0.68.2
Output of npx react-native info
PS C:\Users\dp312\Desktop\ReactNativeApp> npx react-native info
info Fetching system and libraries information...
System:
OS: Windows 10 10.0.22621
CPU: (4) x64 11th Gen Intel(R) Core(TM) i3-1115G4 @ 3.00GHz
Memory: 258.44 MB / 7.80 GB
Binaries:
Node: 14.18.1 - C:\Program Files\nodejs\node.EXE
Yarn: 1.22.19 - ~\AppData\Roaming\npm\yarn.CMD
npm: 6.14.15 - C:\Program Files\nodejs\npm.CMD
Watchman: Not Found
SDKs:
Android SDK: Not Found
Windows SDK: Not Found
IDEs:
Android Studio: AI-213.7172.25.2113.9014738
Visual Studio: Not Found
Languages:
Java: 11.0.16 - C:\Program Files\Java\jdk-11.0.16\bin\javac.EXE
npmPackages:
@react-native-community/cli: Not Found
react: 17.0.2 => 17.0.2
react-native: 0.68.2 => 0.68.2
react-native-windows: Not Found
npmGlobalPackages:
react-native: Not Found
Steps to reproduce
first I'm try to use section List in react native but it's give me some time blank screen then I'm using Flatlist it's working file but I want Strictly header but I don't know how to do in Flatlist so I'm using section List now how I remove blank screen in my project ?
any one can give me solution??
Snack, code example, screenshot, or link to a repository
App.js
`import React, { useState } from 'react';
import {
  StyleSheet,
  Text,
  View,
  SafeAreaView,
  SectionList,
  Image,
  TouchableOpacity,
} from 'react-native';
import { DATA } from './DATA';

const App = () => {
  const renderSectionHeader = ({ section: { title } }) => {
    return (
      <TouchableOpacity onPress={() => {}}>
        <Text style={styles.header}>{title}</Text>
      </TouchableOpacity>
    );
  };
  const renderItem = ({ item, section: { id, title } }) => {
    return (
      <View style={{}}>
        <View
          style={{
            borderColor: '#000',
            borderWidth: 0.5,
            height: 80,
            justifyContent: 'center',
          }}>
          <View style={{ flexDirection: 'row' }}>
            <Image
              style={{ width: 50, height: 50, marginTop: 10 }}
              source={{
                uri: 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcT4oOTHA8YZSX72pio8djNOBHxnOP5pFdUC6A&usqp=CAU',
              }}
            />
            <Text style={{ fontSize: 30, marginLeft: 10 }}>{item}</Text>
          </View>
          <Text style={{ fontSize: 25, marginLeft: 60, marginTop: -30 }}>
            2902912712
          </Text>
        </View>
      </View>
    );
  };
  return (
    <SafeAreaView style={styles.container}>
      <SectionList
        sections={DATA}
        keyExtractor={(item, index) => item + index}
        renderItem={renderItem}
        stickySectionHeadersEnabled
        renderSectionHeader={renderSectionHeader}
      />
    </SafeAreaView>
  );
};

const styles = StyleSheet.create({
  container: {
    flex: 1,
    paddingTop: 10,
    //marginHorizontal: 16,
  },
  item: {
    backgroundColor: '#f9c2ff',
  },
  header: {
    fontSize: 32,
    backgroundColor: '#fff',
  },
  title: {
    fontSize: 24,
  },
});

export default App;
`

DATA.js
export const DATA = [
    {
        title: 'A',
        id: 1,
        data: [
            'Aadsar',
            'Aalamuru',
            'Aantra',
            'Aau(Phalodi)',
            'Aauwa',
            'Abbigeri',
            'Abhanpur',
            'Abhona',
            'Abhrampara',
            'Abiramam',
            'Abloli',
            'Abohar',
            'Abu Darshan',
            'Abu Road',
            'Abubshahar',
            'Achampet',
            'Achanta',
        ],
    },
    {
        title: 'B',
        id: 2,
        data: [
            'B.C Road',
            'Bantwal',
            'B.Nidamanuru',
            'Babaganj',
            'Babai',
            'Babaliya',
            'Babapur',
            'Babapur',
            'Babarpur',
            'Babhaleshwar',
            'Babhanpur',
            'Babhulgaon',
            'Babina',
            'Babra',
            'Babri',
            'Babu Lal Nagar Indore',
            'Babuganj',
        ],
    },
    {
        title: 'C',
        id: 3,
        data: [
            'Calangute',
            'Calicut',
            'Campirganj',
            'Canacona',
            'Chaba',
            'Chabbewal',
            'Chabhadiya',
            'Chabi',
            'Chadayamangalam',
            'Chadhiar',
            'Chadi',
            'Chadiar',
            'Chadotar',
            'Chagalamarri',
            'Chagallu',
            'Chagran',
        ],
    },
    {
        title: 'D',
        id: 4,
        data: [
            'Dabani',
            'Dabhadi',
            'Dabhoi',
            'Dabhol',
            'Dabi',
            'Daboh',
            'Dabok',
            'Dabra',
            'Dabra',
            'Dabri',
            'Dabugaon',
            'Dabwali',
            'Dabwali',
            'Dada Sibha',
            'Dadal Dadar',
            'Dadar',
            'Dadhol',
            'Dadma',
            'Dadrewa',
            'Dadva',
            'Dag',
            'Daggubadu',
            'Dagguluru',
        ],
    },
    {
        title: 'E',
        id: 5,
        data: [
            'Eash',
            'Eashan',
            'Edhas',
            'Edi',
            'Ednit',
            'Eeshwar',
            'Eha',
            'Ehimay',
            'Eka',
            'Ekaaksh',
            'Ekaakshara',
            'Ekaant',
            'Ekaatmaa',
            'Ekachakra',
            'Ekachandra',
            'Eman',
            'Esahan',
            'Evan',
            'Ekon',
            'Eae',
            'Evo',
            'Eson',
            'Ehan',
        ],
    },
    {
        title: 'F',
        id: 6,
        data: [
            'Finn',
            'Felix',
            'Francisco',
            'Finley',
            'Fernando',
            'Fabian',
            'Frank',
            'Franklin',
            'Finnegan',
            'Frederick',
            'Forrest',
            'Ford',
            'Finnley',
            'Fletcher',
            'Flynn',
            'Fisher',
            'Felipe',
            'Franco',
            'Fox',
            'Forest',
            'Foster',
            'Frankie',
            'Finnian',
        ],
    },
    {
        title: 'G',
        id: 7,
        data: [
            'Gadhadhar',
            'Gajbaahu',
            'Gajdant',
            'Gajendra',
            'Gajendranath',
            'Gajkaran',
            'Gajpati',
            'Gajrup',
            'Gajvadan',
            'Gambheer',
            'Ganak',
            'Gadin',
            'Gadiva',
            'Ganaka',
            'Ganapathi',
            'Ganapathy',
            'Ganesh',
            'Gil',
            'Gaile',
            'Geni',
            'Geris',
            'Geel',
            'Gena',
        ],
    },
    {
        title: 'H',
        id: 8,
        data: [
            'Harshkha',
            'Haresh',
            'Harshad',
            'Hina',
            'Hansu',
            'Hinal',
            'Harshuk',
            'Hari',
            'Heeral',
            'Harsh',
            'H',
            'Hani',
            'Harskhuk',
            'Hemsh',
            'Harisa',
            'Hanu',
            'Haku',
            'Hani',
            'Haesh',
            'Harina',
            'Haruka',
            'Hanish',
            'Hanika',
        ],
    },
    {
        title: 'I',
        id: 9,
        data: [
            'Islampur',
            'Isnapur',
            'Ispurli',
            'Iswal',
            'Itarsi',
            'Itawa',
            'Itawa',
            'Itempudi',
            'Itia Thok',
            'Ittamozhi',
            'Itvaya',
            'Itwa',
            'Itwa',
            'Ishan',
            'Ishnai',
            'Ishanu',
            'Ibhanan',
            'Ichaa',
            'Idaspati',
        ],
    },
    {
        title: 'J',
        id: 10,
        data: [
            'Jeet',
            'Jaai',
            'Jaaijit',
            'Jabaar',
            'Jabar',
            'Jag',
            'Jeevan',
            'Jagachandra',
            'Jagadayu',
            'Jagadbandu',
            'Jagadeep',
            'Jagadees',
            'Jagadeesan',
            'Jagadeesh',
            'Jagadev',
            'Jagadhidh',
            'Jagadhish',
            'Jagadish',
            'Jagajeevan',
            'Jagajeet',
            'Jena',
            'Jenil',
            'Jenisha',
            'Jenika',
        ],
    },
    {
        title: 'K',
        id: 11,
        data: [
            'Keshavi',
            'Kaalappan',
            'Kaalathi',
            'Kaaliya',
            'Kaalki',
            'Kaamaari',
            'Kaami',
            'Kaamjaa',
            'Kaan',
            'Kaanan',
            'Kaanishik',
            'Kaapalin',
            'Kaarikaa',
            'Kaarmugilan',
            'Kaarmuhilan',
            'Kaarti',
            'Kaartikey',
            'Kaartikeya',
            'Kaarvannan',
            'Kaashinaath',
            'Kaashinath',
            'Kina',
            'Kehs',
        ],
    },
];

I use Flashlist from Shopify

@leonardoballand Then how do you handle sections in @shopify/flashlist?

+1


text:
[Android] 0.13 Error when ToolbarAndroid config actions

Show error undefine is not an object RCTUIManager.ToolbarAndroid.Constants.ShowAsAction when ToolbarAndroid config actions such as <ToolbarAndroid actions={[{title: 'test', show: 'always'}]} />.
This error disappears using 0.12 version instead of 0.13.

I encountered the same issue, i am using 0.14.2 version
I cleaned the project in Android Studio, yet still not ok

I am also facing the same issue with 0.13.2 at windows setup. Can you check please?

I console RCTUIManager.ToolbarAndroid.Constants in ToolbarAndroid.android.js, it's undefined. It seems ReactToolbarManager.getExportedViewConstants doesn't work. No more help I can do.

@bastengao Is this still an issue with 0.17?

@satya164 This issue doesn't  occur on 0.17.

Thanks.

source: gharchive/issue

repo: facebook/react-native

license: MIT

license_type: permissive

license_source: github-api


text:
'IconImage' has no propType for native prop 'SMXIconImage.renderToHeadwareTextureAndroid' of native type 'boolean' on Android

I just upgraded my react native version to 0.16.0 and then I am getting error.

@awesomepankaj Looks like this is coming from the third party module react-native-icons.
Perhaps making sure that your using the latest version might be a good place to start but I would also recommend you open up an issue with them as well.

ok. thanks

authors: awesomepankaj christopherdro


text:
Why doesn't support zIndex?

I build a component, but i can not set z-index  invariant violation: 'zIndex' is not a valid style property. @vjeux

'use strict';

var React = require('react-native');

var {
  ActivityIndicatorIOS,
  StyleSheet,
  Text,
  View
} = React;

var Loading = React.createClass({
  render: function () {
    return (
      <View style={ styles.container }>
        <View style={ styles.loading }>
          <ActivityIndicatorIOS style={ styles.animate } animating={ true }></ActivityIndicatorIOS>
          <Text style={ styles.text }>Loading...</Text>
        </View>
      </View>
    );
  }
});

var styles = StyleSheet.create({
  container: {
    zIndex: 1,
    position: 'absolute',
    alignItems: 'center'
  },

  loading: {
    width: 94,
    height: 94,
    padding: 15,
    opacity: .5,
    borderRadius: 4,
    backgroundColor: 'black'
  },

  animate: {
    marginBottom: 15
  },

  text: {
    color: '#FFF'
  }

});

module.exports = Loading;

Thanks!

zIndex can be controlled by re-arranging the components when you render. The later views will be drawn above the earlier ones.
This is easier for debugging because you only need to look at the render order, instead of needing to check the render order and the stylesheet.
#559, #131

Thank you very much！ : )

Well i know it's closed but it's very useful to have these properties bringSubviewToFront and inverse
See The PR https://github.com/facebook/react-native/pull/1891

The problem with changing the order in which you draw items is that it can have unexpected results on animation.

Anyone know how to control the draw order without reordering siblings?

UIView.subviews
The order of the subviews in the array reflects their visible order on the screen, with the view at index 0 being the back-most view.

https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIView_Class/#//apple_ref/occ/instp/UIView/subviews

One way to deal with the problems that are created by automatically overlaying subsequent elements over previous ones would be to implement the flex order element. This way, you could have an element with a lower z-index easily appear after an element with a higher z-index.

Flex order seems like a great idea cc @vjeux. Anyone want to contribute a PR and some tests to the CSS-layout repo?

flex order would not suffice layering to some extend. I got two list view. Overlapping each other. The list  view which is below won't scroll at all as it being overlapped by high order.  I gave a shot by making position: absolute and giving top and bottom a value.  it did not work, so was wondering, if any one can show me a way to this mystery.

Can you add it to https://productpains.com/product/react-native/, so that we can track it and see how popular this is. Thanks!

I know this is closed, but this is preventing something as simple as a dropdown from being implementable?
The only way I can think of doing one is to have 1 single View at the bottom of all my other views that happens to hold my options, that I move around across the app depending on which drop-down might need it. That seems really hacky.

I am in the same boat. I have a deeply nested component that needs to render an overlay. Conceptually, it makes sense to handle the generation of this overlay and its contents, and the handling of open close, all within this component. However, due to the zindex issue, it is impossible to get it to render on top because it is so deeply nested.
To overcome this, I have to move the generation and rendering functionality into a separate component higher up in the tree, while keeping the trigger functionality in the deeply nested component. However, multiple nested components need this overlay, with different options, so it begins to turn into a mess. The app is losing separation of concerns.

d64368b adds zIndex to iOS
3d3b067 adds zIndex to Android

Yes, however, I still run into this issue. Between my top-most layer and my bottom-most layer of the component tree, there are multiple components in-between that are bound to be positioned absolute or fixed. For example, tab navigation on the left or bottom of the app must be pinned there to prevent movement, generally using fixed.
Therefore, applying position: absolute + the highest zIndex value known within the app, to a component at the bottom layer, is NOT forcing the component to render at the top (especially above the aforementioned tab navigation). Because instead, it binds to the first position: absolute or fixed layer it finds on its way up the tree. Does that help clarify?

@joncursi That's how the web works too.
I suggest you create a portal component at the root which renders your components.

Does this work for Animated.View? I'm having a strange issue:
http://stackoverflow.com/questions/40326822/drag-drop-and-swap-items-animation
It works for simple cases e.g.:
<View style={{ zIndex: 100, backgroundColor: 'red' }}><Text>foo</Text></View>
<View style={{ zIndex: -100, top: -10, backgroundColor: 'blue' }}><Text>bar</Text></View>

but have no idea what's wrong for the animation. (Dragging should put it on top)

@andrewnoh zIndex only affects the order of siblings.
In your scenario, you need to change zIndex on the green boxes, instead of the draggable boxes (assuming the green box is the draggable box's parent).

@aleclarson Thank you so much. Seems like I had a pretty big misunderstanding about how zIndex works. 👍

I have a dropdown Menu which is being overlapped by text view, zIndex does not work

`
import React, { Component } from 'react';
import {
AppRegistry,
StyleSheet,
Text,
View,
TextInput,
TouchableOpacity,
Image
} from 'react-native';
import DropDown, {
Select,
Option,
OptionList,
updatePosition
} from 'react-native-dropdown';
import { StackNavigator } from 'react-navigation';
export default class Corporate extends Component {
//=======navigation optionpane========//
static navigationOptions = {
title: 'Welcome',
header: null
};
//====================================//
constructor(props) {
super(props);
this.state = {
  canada: '',
};

}
componentDidMount() {
updatePosition(this.refs['SELECT1']);
updatePosition(this.refs['OPTIONLIST']);
}
_getOptionList() {
return this.refs['OPTIONLIST'];
}
_canada(province) {
this.setState({
  ...this.state,
  canada: province
});

}
renderA() {
return (

<Image source={require('../images/logo.jpg')} style={styles.image}>
Corporate Sign Up

);
}
renderB() {
return (
  <View >

    <Select
      style={{ position: 'relative', zIndex: 20 }}
      width={300}
      ref="SELECT1"
      optionListRef={this._getOptionList.bind(this)}
      defaultValue="Select a Province in Canada ..."
      onSelect={this._canada.bind(this)}>
      <Option value={{ id: "alberta" }}>Alberta</Option>
      <Option>British Columbia</Option>
      <Option>Manitoba</Option>
      <Option>New Brunswick</Option>
      <Option>Newfoundland and Labrador</Option>

    </Select>

    <OptionList ref="OPTIONLIST" />

  </View>

);

}
renderC() {
return (
<View style={{ alignItems: 'center' }}>

    <TouchableOpacity activeOpacity={.5}>
      <View style={styles.button}>
        <Text style={styles.buttonText} > Submit</Text>
      </View>
    </TouchableOpacity>
  </View>
);

}
render() {
return (
  <View style={styles.container}>

    {this.renderA()}
    {this.renderB()}
    {this.renderC()}

  </View>

);

}
}
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
backgroundColor: '#000000'

},
image: {
width: 250,
height: 110
},
text: {
color: "#FFF",
fontSize: 25
},
inputWrap: {
marginVertical: 10,
height: 40,
width: 300,
marginTop: 20,
backgroundColor: "#FF0000"

},
input: {
flex: 1,
paddingHorizontal: 15,
backgroundColor: '#fff'
},
button: {
backgroundColor: "#FF8C00",
paddingVertical: 15,
marginVertical: 15,
marginHorizontal: 120,
width: 100,
height: 35,
alignItems: "center",
justifyContent: "center"
},
buttonText: {
color: '#FFF',
fontSize: 15
},
set: {
marginTop: 20
},
spinner: {
marginVertical: 10,
justifyContent: 'center',
alignItems: 'center',
marginTop: 20,
backgroundColor: "#FF0000"

}
});`

@khushdeepkaur In the future, consider creating a Gist when you have a lot of code to share. Also, you should open a new issue. This is an issue about perceived lack of support for zIndex, which has been resolved.
@ide @vjeux Should this thread be locked?

authors: Iragne aleclarson alexprice91 andrewnoh avatarfreak code-artisan ericvicenti ide joncursi khushdeepkaur mschipperheyn psbanka satya164 simechiang vjeux


text:
Reverting Flow related changes from CI 15749 to get builds back in order

Reverting 3 commits that introduced new Flow errors during build process. This has resulted in CI not being able to successfully build. The engineer working on this has been tasked.
63d3ea1
5042bae
6283878
Same as #12450 but does not revert 118e883.
Unlike #12450, this PR should import successfully as I will be using a newer import tool.

Let's see if these three reverts are sufficient to unbreak CI.

This PR did not initially pass tests:
$ npm run flow -- check

> react-native@1000.0.0 flow /Users/hramos/git/react-native
> flow "check"

Libraries/Experimental/FlatList.js:132
132:   viewabilityConfig?: ViewabilityConfig,
                           ^^^^^^^^^^^^^^^^^ identifier `ViewabilityConfig`. Could not resolve name

I have now reverted f2687bf4b6201931454c8c43785d78054c856d80 which resolved the error above.

@hramos is this needed anymore given the fix that we're attempting to land for Flow in 12533.

Not any more, closing.

source: gharchive/pull-request

authors: hramos skevy


text:
Fixed italic style not being removed on TextInput on Android

Summary

When a user removes { fontStyle: 'italic' } from a TextInput on Android, the text remains italic. This is because the fontStyle is set to UNSET, which just retains the previous style.
The user would rather expect that the fontStyle be set back to 'normal'
Changelog

[Android] [Fixed] - Fixed so that removing fontStyle: 'italic' style from TextInput correctly resets to font-style to be non-italic
Test Plan

Added a new TextInput test in RNTesterApp called "fontWeight and fontStyle with toggles"
See behaviour:

Before
After

@JoshuaGross - it looks like you've added a bunch of code before for the TextInput on Android - would you be able to give this a quick review? Thanks!

Looks fixed!


text:
fix(android): build.gradle typo

Summary

Just a small typo fix

Changelog

[Android] [Fixed] - Typo in build.gradle
Test Plan

Check out the diff changes

Thanks @jeremybarbet for submitting this fix!

authors: cipolleschi jeremybarbet


text:
Fix comments in LayoutShadowNode!

Summary: Changelog: [Internal]
Reviewed By: javache
Differential Revision: D56831755

Merged as https://github.com/facebook/react-native/commit/3ffdace1377c1c88c0c013600be8169e6a28c442

authors: RSNara javache


text:
Add ability to override the ViewStyle of the root View component

Summary:
In order to host a ReactNative surface whose size is controlled by the RN content rather than the size of the surface, we need the ability to remove  the flex:1 style on the root View component.
SurfaceHandler has layout functions which take a LayoutConstraint (so min/max size).   The root View component in AppContainer has a hardcoded flex:1 style.  This view is above the WrapperComponent, which we can currently override.  But I dont see anyway to avoid the root View having that flex style.  This flex style means that the rootview will always be the maxheight passed into the layout functions on SurfaceHandler.  Which prevents allowing RN surfaces that can size themselves based on their content.
This change adds a setRootViewStyleProvider method to AppRegistry, which works similar to setWrapperComponentProvider but allows apps to override the style property on the root View component.  In particular, this allows apps to remove the flex:1 style, which is required to enable react surfaces which are sized based on their contents.
Changelog:
Pick one each for the category and type tags:
[GENERAL] [ADDED] - Added AppRegistry.setRootViewStyleProvider
Test Plan:
Will be including this change into react-native-windows to enable scenarios with content sized surfaces within Microsoft Office to work with the new architecture.  Would like signoff on this direction before I go and integrate it there.

I'm not sure why we even have that <View style={styles.root} pointerEvents="box-none"> - do you think we could just remove that altogether?
The only use-case I can imagine is for the in-app devtools (which we're looking to move away from) to fully occupy the whole screen so they show up at the bottom, even if the content doesn't -

You are saying get rid of the whole View?
We could probably do that in the ApplicationContainer-prod version, it is not really doing much there.  (Not sure how much work the pointerEvents="box-none" is doing).
But the dev one seems to have various bits of UI in it currently (LogBox, DebuggingOverrlay, ReactDevToolsOverlay, Inspector).  So I dont think we can get rid of it there.  -- And we would like the layout to work similarly in dev and prod.

Those developer UI bits should all be relative to the container, so as long as the content inside of it still fills up the entire screen, their layout should still be correct, but I could be wrong.

Removing flex: 1 could potentially be a breaking change, because if innerView (what is passed to AppContainer) is not using flex-layout and sets widthorheightrelative to its container, then the layout will be broken. Because I usually have seen opposite cases, where developers end up havingflex: 1` style for their screen to signal that this component takes the space of the whole screen.
It makes sense to me to leave flex: 1 by default, and add an option for extending root view style.
Some testing is required here: we need to double-check that all developer overlays work well with when innerView is resizing the AppContainer and then it is propagated to DebuggingOverlay and ReactDevToolsOverlay. These are used for React DevTools, if you have RDT open, try selecting some component, if nodes are highlighted correctly on the screen, then it works as expected.

I've verified that hovering over components in ReactDevTools places the debugging overlay in the correct locations.  And toggling the inspector shows the inspector along the bottom of the view correctly.
Verified toggling the inspector bar (not sure what its called -- this thing:

Verified clicking on components in inspect mode works correctly.
I will note that the inspector bar does not affect the size of the react surface. So, if the content is really small (say 10px high), then toggling the inspector bar does not increase the size of the view, so the inspector bar is cut off. -- I think this is probably the desired behavior.
Similarly, LogBox will show correctly at the bottom of the view - and will also not cause the surface to be larger than the content makes the surface - so on extremely small surfaces it too will be cut-off.

@javache @hoxyq - Anything else needed here?  Any other feedback?

@javache @hoxyq - Anything else needed here? Any other feedback?

Looks good, we are going to iterate on this internally and then merge it if everything is okay

authors: acoates-ms hoxyq javache


text:
[WebSocket][android][ios parity] Add support for binary type data (ArrayBuffer)

This brings the same functionality that's already present on iOS, introduced in #4483, to Android: convert binary payloads to base64 strings and send them to JS land that way, where they'll be turned into an ArrayBuffer.

Also @mkonicek if past changes to this file are any indicator.

@philikon Looks like there is another PR open addressing this. #6327
Is there any differences here?

@christopherdro #6327 is for sending binary data, while this is about receiving it. Support for receiving was already added to iOS in #4483 so all we really need here is to add a few lines to Android to make it work there too. This PR here adds those few lines.

Ping?
FWIW, I added a Test Plan that's easily reproducible with the UIExplorer example that I provided in #6889.

Amazing, thank you @philikon!
@facebook-github-bot shipit

What's blocking this from getting merged at this point?

@facebook-github-bot shipit

@philikon The get hung up sometimes. Pinging again.

Thanks everyone!

authors: christopherdro mkonicek philikon


text:
OCaml Bindings support

Can i use a binding like that? https://github.com/Kakadu/lablqml

As long as you're using native compilation there is no binding required to use any OCaml libraries.

I like to use this binding, in order to get QML support?

Yes you can! A Reason project works fine alongside ml files =). The usual setup should work.
Closing this. Tell me if you'd like to know more.

authors: ShalokShalom chenglou hcarty

repo: facebook/reason


text:
Relax semicolon requirement in more cases

Fixes https://github.com/facebook/reason/issues/2011
Extends the approach of https://github.com/facebook/reason/pull/1887, to allow semi-less reason in the context of:

if
while
for
switch
for
lazy
assert

@let-def is this ok? Or am I opening Pandora's box?

It depends on the future features we might like to see in the language. But since, for now, it is just being more relaxed about input accepted while still generating strict code, I am not too worried.
This idea of allowing no semi-colon before LIDENT/UIDENT might have some unexpected consequences I cannot foresee though.

Alright then. Merging =)

Yeah, @let-def the expectations we set about relaxed semicolons is that it's an IDE time assistant to fixing missing semicolons. I think that "nonbreaking changes" should be defined as changes that will not break your code after formatting in v1, then parsing in v2. "nonbreaking changes" make no promise about unformatted code in v1 being parsed in v2.

authors: IwanKaramazow chenglou jordwalke let-def


text:
Option to specify port when running the server?

My project is based on create-react-app. npm start by default will run the application on port 3000 and there is no option of specifying a port in the package.json.
How can I specify a port of my choice in this case? I want to run two of this project simultaneously (for testing), one in port 3005 and other is 3006
SO Question

You can specify your port with process.env.PORT. It can be done by changing the script for start in package.json as shown below:
"start": "PORT=3006 react-scripts start"

You mean my package.json will be
{
  "start": "PORT=3006 react-scripts start",
  "name": "igene-web",
  "version": "0.1.0"......... }

then npm start?
didn't work for me (windows and ubuntu)

@fireflieslive no it is not. You should change the start command inside scripts section in your package.json

haha, where am i looking. thanks!

You're welcome. If your issue is solved you can close the issue :D

works with ubuntu, not with windows:

'PORT' is not recognized as an internal or external command,
operable program or batch file.

The above command is Unix (Ubuntu, Mac, etc…). In windows enviroment, you need a different syntax. Google something like "set env in windows command line"

For windows you can use cross-env https://www.npmjs.com/package/cross-env

You can also create an .env file with
PORT=3006

and save it in your project directory.

This worked for me, thanks!

On Windows with yarn this worked for me:
"scripts": {
"start": "set PORT=3006 && react-scripts start",
....

Or use npm cross-env (without &&!)
"scripts": {
    "start": "cross-env PORT=3006 react-scripts start",
}

how to do it with the build folder ?

Deployment is a bit different, you can read our documentation on that @webmobiles.
Open an issue if you run into any trouble / find something wrong!

"start": "PORT=3006 react-scripts start"
in package.json change it.

authors: Delapouite Timer alexratiu dvkndn fireflieslive gaearon ghost philipjmurphy riceyeh rugglcon ulrikwalter webmobiles

repo: facebookincubator/create-react-app

license: mit

license_source: bigquery


text:
Update statically-linked flashrom binary for Emmitsburg support

flashrom tip:
bbe9a77 dediprog.c: Drop dediprog_ prefix for spi data struct members
07f41b3 dediprog.c: Refactor singleton states into reentrant pattern
1f28ac6 chipset_enable.c: Mark Z97 as DEP
1bc3c51 ich_descriptors_tool: Add missing Comet Point in usage
Signed-off-by: Johnny Lin johnny_lin@wiwynn.com

@rojer9-fb @jonzhang-fb @walterchris

repo: facebookincubator/osf-builder


text:
Flaky test AggregationTest.spillingForAggrsWithSorting

Bug description
Here is the failed test log:
296: [ RUN      ] AggregationTest.spillingForAggrsWithSorting
138: E1122 07:40:14.403312 58296 Exceptions.h:69] Line: ../../velox/common/memory/MemoryPool.cpp:572, Function:allocateContiguous, Expression:  allocateContiguous failed with 14947 pages from Memory Pool[default_shared_leaf_pool_27 LEAF root[default_root] parent[default_root] MMAP no-usage-track thread-safe]<unlimited max capacity unlimited capacity used 0B available 0B reservation [used 0B, reserved 0B, min 0B] counters [allocs 709, frees 358, reserves 169, releases 169, collisions 0])> Failed to evict from cache state: AsyncDataCache:
138: Cache size: 0B tinySize: 0B large size: 0B
138: Cache entries: 0 read pins: 0 write pins: 0 pinned shared: 0B pinned exclusive: 0B
138:  num write wait: 0 empty entries: 0
138: Cache access miss: 0 hit: 0 hit bytes: 0B eviction: 0 eviction checks: 0
138: Prefetch entries: 0 bytes: 0B
138: Alloc Megaclocks 0
138: Allocated pages: 2096572 cached pages: 0
138: , Source: RUNTIME, ErrorCode: MEM_ALLOC_ERROR
277: [       OK ] MinMaxByAggregationTest/MinMaxByGlobalByAggregationTest.minByFinalGlobalBy/9 (47 ms)
277: [ RUN      ] MinMaxByAggregationTest/MinMaxByGlobalByAggregationTest.minByFinalGlobalBy/10
296: ../../velox/exec/tests/AggregationTest.cpp:112: Failure
296: Expected: (stats.customStats["spillSortTime"].sum) > (0), actual: 0 vs 0
296: Google Test trace:
296: ../../velox/exec/tests/AggregationTest.cpp:1821: SELECT c0 % 7, array_agg(c1 ORDER BY c1) FROM tmp GROUP BY 1
138: E1122 07:40:14.418005 58317 Exceptions.h:69] Line: ../../velox/common/memory/MemoryPool.cpp:572, Function:allocateContiguous, Expression:  allocateContiguous failed with 62005 pages from Memory Pool[default_shared_leaf_pool_27 LEAF root[default_root] parent[default_root] MMAP no-usage-track thread-safe]<unlimited max capacity unlimited capacity used 0B available 0B reservation [used 0B, reserved 0B, min 0B] counters [allocs 710, frees 358, reserves 169, releases 169, collisions 0])> Failed to evict from cache state: AsyncDataCache:
138: Cache size: 0B tinySize: 0B large size: 0B
138: Cache entries: 0 read pins: 0 write pins: 0 pinned shared: 0B pinned exclusive: 0B
138:  num write wait: 0 empty entries: 0
138: Cache access miss: 0 hit: 0 hit bytes: 0B eviction: 0 eviction checks: 0
138: Prefetch entries: 0 bytes: 0B
138: Alloc Megaclocks 0
138: Allocated pages: 2096572 cached pages: 0
138: , Source: RUNTIME, ErrorCode: MEM_ALLOC_ERROR
296: [  FAILED  ] AggregationTest.spillingForAggrsWithSorting (47 ms)
https://circleci.com/api/v1.1/project/github/facebookincubator/velox/264554/output/109/0?file=true&allocation-id=655da71234250222164e6e3b-0-build%2FABCDEFGH
System information
Reproduce on circle ci with re-run with ssh option
Relevant logs
https://circleci.com/api/v1.1/project/github/facebookincubator/velox/264554/output/109/0?file=true&allocation-id=655da71234250222164e6e3b-0-build%2FABCDEFGH

cc @mbasmanova @duanmeng

This issue could not reproduced by repeat run 200 times.
Repeating all tests (iteration 200) . . .

Note: Google Test filter = AggregationTest.spillingForAggrsWithSorting
[==========] Running 1 test from 1 test suite.
[----------] 1 test from AggregationTest
[ RUN      ] AggregationTest.spillingForAggrsWithSorting
[       OK ] AggregationTest.spillingForAggrsWithSorting (365 ms)
[----------] 1 test from AggregationTest (365 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (382 ms total)
[  PASSED  ] 1 test.

authors: duanmeng xiaoxmeng

repo: facebookincubator/velox


text:
Print output type of a plan node in printPlanWithStats

Adds output type of each plan node in printPlanWithStats.
Sample output for tpch q13:
Splits total: 160, finished: 160
-> OrderBy[custdist DESC NULLS LAST, c_count DESC NULLS LAST]
   OutputType: ROW<c_count:BIGINT,custdist:BIGINT>
   Output: 46 rows (896B), Cpu time: 136.45us, Blocked wall time: 0ns, Peak memory: 1.00MB, Memory allocations: 5, Threads: 1
  -> Aggregation[SINGLE [c_count] custdist := count(0)]
     OutputType: ROW<c_count:BIGINT,custdist:BIGINT>
     Output: 46 rows (23.84KB), Cpu time: 46.51ms, Blocked wall time: 0ns, Peak memory: 1.00MB, Memory allocations: 7, Threads: 1
    -> Aggregation[FINAL [c_custkey] c_count := count(ROW["pc_count"])]
       OutputType: ROW<c_custkey:BIGINT,c_count:BIGINT>
       Output: 1500000 rows (34.29MB), Cpu time: 4.82s, Blocked wall time: 0ns, Peak memory: 56.00MB, Memory allocations: 4984, Threads: 1
      -> LocalPartition[GATHER]
         OutputType: ROW<c_custkey:BIGINT,pc_count:BIGINT>
         Output: 24704006 rows (565.79MB), Cpu time: 175.84ms, Blocked wall time: 13.05s, Peak memory: 0B, Memory allocations: 0
         LocalPartition: Input: 12352003 rows (282.89MB), Output: 12352003 rows (282.89MB), Cpu time: 82.05ms, Blocked wall time: 10.34s, Peak memory: 0B, Memory allocations: 0, Threads: 8
         LocalExchange: Input: 12352003 rows (282.89MB), Output: 12352003 rows (282.89MB), Cpu time: 93.79ms, Blocked wall time: 2.71s, Peak memory: 0B, Memory allocations: 0, Threads: 1
        -> Aggregation[PARTIAL [c_custkey] pc_count := count(ROW["o_orderkey"])]
           OutputType: ROW<c_custkey:BIGINT,pc_count:BIGINT>
           Output: 12352003 rows (282.89MB), Cpu time: 12.54s, Blocked wall time: 0ns, Peak memory: 32.00MB, Memory allocations: 41190, Threads: 8
          -> HashJoin[RIGHT o_custkey=c_custkey]
             OutputType: ROW<c_custkey:BIGINT,o_orderkey:BIGINT>
             Output: 15337604 rows (323.18MB), Cpu time: 11.70s, Blocked wall time: 1.98s, Peak memory: 17.00MB, Memory allocations: 16696
             HashBuild: Input: 1500000 rows (0B), Output: 0 rows (0B), Cpu time: 1.41s, Blocked wall time: 53.63ms, Peak memory: 16.00MB, Memory allocations: 577, Threads: 8
             HashProbe: Input: 14837583 rows (972.32MB), Output: 15337604 rows (323.18MB), Cpu time: 10.30s, Blocked wall time: 1.92s, Peak memory: 1.00MB, Memory allocations: 16119, Threads: 8
            -> TableScan[table: orders, remaining filter: (not(like(ROW["comment"],"%special%requests%")))]
               OutputType: ROW<o_custkey:BIGINT,o_comment:VARCHAR,o_orderkey:BIGINT>
               Input: 14837583 rows (1.17GB), Raw Input: 15000000 rows (315.15MB), Output: 14837583 rows (972.32MB), Cpu time: 24.06s, Blocked wall time: 509.00us, Peak memory: 36.00MB, Memory allocations: 36391, Threads: 8, Splits: 80
            -> TableScan[table: customer]
               OutputType: ROW<c_custkey:BIGINT>
               Input: 1500000 rows (0B), Output: 1500000 rows (0B), Cpu time: 64.73ms, Blocked wall time: 329.00us, Peak memory: 3.00MB, Memory allocations: 369, Threads: 8, Splits: 80

@majetideepak Thank you, Deepak. I wonder if it makes sense to put the output on the same line as the node and remove OutputType: ROW< prefix.
  -> Aggregation[SINGLE [c_count] custdist := count(0)]
     OutputType: ROW<c_count:BIGINT,custdist:BIGINT>

vs.
  -> Aggregation[SINGLE [c_count] custdist := count(0)] -> c_count:BIGINT, custdist:BIGINT

@mbasmanova a test for printPlanWithStats is long due. I will add one as part of this PR.

I wonder if it makes sense to put the output on the same line as the node and remove OutputType: ROW< prefix.

@mbasmanova I feel having two -> on the same line is not visually great. Example:
-> OrderBy[custdist DESC NULLS LAST, c_count DESC NULLS LAST] -> c_count:BIGINT,custdist:BIGINT
   OutputType: ....
   -> Aggregation[SINGLE [c_count] custdist := count(0)] -> c_count:BIGINT,custdist:BIGINT

How about
-> OrderBy[custdist DESC NULLS LAST, c_count DESC NULLS LAST] : <c_count:BIGINT,custdist:BIGINT>
   OutputType: ....
   -> Aggregation[SINGLE [c_count] custdist := count(0)] : <c_count:BIGINT,custdist:BIGINT>

@majetideepak : instead of -> is fine, but I wonder where do you see 2 arrows? I used -> to match Presto. Do we need <> around the output type? If not, let's remove these. Do we need OutputType... line or did you mean Output:...?
I think either of the following works.
 -> Aggregation[SINGLE [c_count] custdist := count(0)] -> c_count:BIGINT, custdist:BIGINT

 -> Aggregation[SINGLE [c_count] custdist := count(0)] : c_count:BIGINT, custdist:BIGINT

but I wonder where do you see 2 arrows?

One at the beginning, and one after the plan node description?
-> Aggregation[SINGLE [c_count] custdist := count(0)] -> c_count:BIGINT, custdist:BIGINT

Do we need <> around the output type? If not, let's remove these.

We don't.

Do we need OutputType... line or did you mean Output:...?

I meant Output. Sorry.

-> Aggregation[SINGLE [c_count] custdist := count(0)] -> c_count:BIGINT, custdist:BIGINT

I will make this change if there is precedence with Presto.

One at the beginning, and one after the plan node description?

Got it. Somehow I didn't notice. Would it help to change the first arrow to -?
- Aggregation[SINGLE [c_count] custdist := count(0)] -> c_count:BIGINT, custdist:BIGINT

Got it. Somehow I didn't notice. Would it help to change the first arrow to -?

I think this is best. Thanks!

@mbasmanova After some thought, I feel it is better to extend the following method to print the output type. Specifically, if detailed == true, we will print the output type.
PlanNode::toString(std::stringstream& stream, bool detailed,  bool recursive, ...)
I also see that -- as the prefix looks better. Any thoughts?
Example:
      -> Project[expressions: (out3:BIGINT, plus(cast ROW["out1"] as BIGINT,10))]
        -> Filter[expression: lt(mod(cast ROW["out1"] as BIGINT,10),8)]
          -> Project[expressions: (out1:SMALLINT, ROW["c0"]), (out2:BIGINT, plus(mod(cast ROW["c0"] as BIGINT,100),mod(cast ROW["c1"] as BIGINT,50)))]
            -> Filter[expression: lt(mod(cast ROW["c0"] as BIGINT,10),9)]
              -> Values[5 rows in 1 vectors]

now becomes
      -- Project[expressions: (out3:BIGINT, plus(cast ROW["out1"] as BIGINT,10))] -> out3:BIGINT
        -- Filter[expression: lt(mod(cast ROW["out1"] as BIGINT,10),8)] -> out1:SMALLINT, out2:BIGINT
          -- Project[expressions: (out1:SMALLINT, ROW["c0"]), (out2:BIGINT, plus(mod(cast ROW["c0"] as BIGINT,100),mod(cast ROW["c1"] as BIGINT,50)))] -> out1:SMALLINT, out2:BIGINT
            -- Filter[expression: lt(mod(cast ROW["c0"] as BIGINT,10),9)] -> c0:SMALLINT, c1:INTEGER, c2:BIGINT
              -- Values[5 rows in 1 vectors] -> c0:SMALLINT, c1:INTEGER, c2:BIGINT

it is better to extend the following method to print the output type

I agree.

I also see that -- as the prefix looks better.

That works.

I opened a new PR with the new change. https://github.com/facebookincubator/velox/pull/1536
I will add a test for PrintPlanWithStats in another PR.

authors: majetideepak mbasmanova


text:
Improve the document of Expand operator

Follow up https://github.com/facebookincubator/velox/pull/5403 to add the query plan for the expand operator in operator.rst.

@mbasmanova This pr is to address the comment here. Can you help to review? Thanks.


text:
w/ memory-map on and w/o subsampling, how large RAM do I need to run DLRM on the full-sized Terabyte dataset?

I want the full-sized Terabyte dataset, and I learned from one of the previous issues that to preprocess it, we need about 3-4 TB RAM, which is unachievable to me. So I am wondering is there any other method to run this largest setting?

You can try using --memory-map flag, it will minimize the required RAM. This dataset will take a long time to pre-process and you will still need significant disk space, though.

You can try using --memory-map flag, it will minimize the required RAM. This will take a long time to pre-process and you will need significant disk space, though.

I have about 3TB disk space (the 1.1 TB dataset size not included) now and I assume it is enough (correct me if I am wrong). But I have two concerns:

what is the memory requirement under this setting? Like will 256 GB RAM work?
I am doing the preprocessing in a department cluster and using slurm to schedule my tasks, so I may experience some disconnect problem from time to time (e.g. due to the duration limit of Slurm), I wonder if the preprocessing can resume from a checkpoint or something if it was interrupted?

This might not be enough, you probably will need 4TB+ for storing all the intermediate pre-processing files. In the --memory-map approach the pre-processing shuffles data in and out of disk to preserve RAM and stores many intermediate files. If you do not have a larger machine, my advice is to work with a smaller dataset.
The pre-processing is broken into several stages, you can restart the pre-processing on a stage boundary, but if it's interrupted during a particular stage, you will need to manually remove the files for that stage and restart it, otherwise data might be corrupted, e.g. https://github.com/facebookresearch/dlrm/issues/125#issuecomment-676574041

Thanks, I will install larger disks as I really want to play with large models. So I assume the RAM could meet the need?
By the way, would you think that it would be a good idea if you (or the MLCommons community) can provide a test set data loader? For people who are interested in inference only, processing the whole dataset is too expensive, and the test dataloader shouldn't be very large I think.

I believe that 256 GB RAM and more disk space should be enough. The MLPerf/MLCommons community might have a pre-preprocessed dataset. You should ask them about it on their forums.
ps. currently the generation of training and test sets are tied together, so it's not possible to just generate the test set.

Yes, I understand that we cannot just generate the test set, but if someone can preprocess all the data, and simply store the test parts in a binary form (as only the last day is used, the data volume is relatively small), users can directly load it to use? Is this understanding correct?

Hi!
I need the whole preprocessed terabyte dataset for training experiments.
How much RAM and Storage do I need to preprocess whole terabyte dataset??
i already read previous issues, but hard to be sure...

@gnupdev Hi, as @mnaumovfb just pointed out, 256 GB RAM + more than 4 TB disk should be enough under the memory map settings. I don't know the requirements without this flag, maybe the maintainers can give you the answer.

Thanks you!

@mnaumovfb Hi I am a bit confused about the "boundary" between stage(i) and stage(ii). Now I have all day_*.npz files, together with all day_fea_dict_*.npz, and day_fea_count.npz, day_day_count.npz. Should I delete all except the day_*.npz files? You said "be careful" about the two small files, but what does this exactly mean? Thanks.

In general, you should not be touching intermediate pre-processing files. This could only be a solution of less resort if something has crashed and you absolutely need to recover it. It is complicated to make this recovery work correctly and I do not guarantee it will work in every case.
If you are interested in dealing with a large dataset, you will need to have uninterrupted access to a machine/node with at least 256GB RAM and 8TB of disk space for a long period of time (weeks). My advice is to try working with smaller dataset before trying the larger one.

In general, you should not be touching intermediate pre-processing files.

Yes, I don't feel like touching them...but the thing is, as you said, the program had crashed due to the time limitation of my cluster manager. I had to recover it.

If you are interested in dealing with a large dataset, you will need to have uninterrupted access to a machine/node with at least 256GB RAM and 8TB of disk space for a long period of time (weeks).

I am confused why it suddenly turns to be 8TB...? Were we just saying 4 TB?
Thanks for reminding me to try smaller one first, I already played with the 0.875-subsampled version, it is already time to fight with this Terabyte monster.

authors: 12eadp001 gnupdev mnaumovfb

repo: facebookresearch/dlrm


text:
As usual, not an open license

In the best traditions of Facebook, you're offering this model under a license that makes it impossible to use it for commercial projects. Which, in turn, means that nobody will have the scale to turn it into something useful.
Well done, Facebook, as usual, you show your real face.
In addition to your non-existent customer support for users and advertisers.
I really hope that one day your company goes bankrupt, so you give space to somebody who truly cares. The culture at Facebook is rotten.

Is anyone's company owned research lab really a good actor? Ah yes misusing the word "open" again. EleutherAI said they'd stop making bigger LLMs. I guess they'll be back at it... good thing for Huggingface. Not hating on anyone but yeah this is what hacker collectives are for.

Please refer to our whitepaper for extensive discussion of why we believe this technology is not ready for commercial applications.

I think that's pretty fair we don't mean to harass your team. Respect to you! :)) have a great rest of your day.

authors: deemeetree puffy310 stephenroller

repo: facebookresearch/metaseq


text:
hvRecursive: boolean comparison of np.array to None

Steps to reproduce
Please see the following snippet:
import nevergrad as ng
from nevergrad.functions import MultiobjectiveFunction

SIZE = 2

def multiobjective(*args, **kwargs):
    return [1] * SIZE

f = MultiobjectiveFunction(
    multiobjective_function=multiobjective, upper_bounds=[5] * SIZE
)

optimizer = ng.optimizers.OnePlusOne(instrumentation=1, budget=100)
recommendation = optimizer.minimize(f)
print(recommendation)

Change SIZE from 2 to 3 to observe the problem.
Observed Results

The example above results in ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all().
The problem is in nevergrad/functions/multiobjective/pyhv.py:127:

            while q.cargo != None:

This apparently should be
            while q.cargo is not None:

It feels that with SIZE == 2 the _HyperVolume().hvRecursive is never called. With SIZE > 2 it is called, and therefore throws the error.

Expected Results
It is up to the developers to decide what comparison it should be there, element-wise or array to None.
Relevant Code
Please see above.
Suggestions
Change the comparison in while loop to while q.cargo is not None:. This fixed the problem to me, although I don't know whether we want to do .any() or .all() instead.
Thank you.

Would it be useful if I create a PR fixing this issue?

This issue is approached by #356

Fixed in #356.

repo: facebookresearch/nevergrad


text:
Segment Anything ?

Great job!
However, there appears to be a minor typo in the paper.
Taiwan, Hong Kong, and Macau are not independent countries.
They are all integral parts of China.
Thank you once again for delivering such a fantastic paper.
Rectifying this error will make the paper better.

I strongly agree with you that they are a sacred and inseparable part of Chinese territory and that scientific research should be factual

https://en.wikipedia.org/wiki/Troll_(slang)

can't agree more!

can't agree more, the work is excellent, but we must respect the facts about the territorial issue, hope the author can correct it, Hong Kong, Macao, and Taiwan are inalienable parts of China.

I also can't agree more. I hope the author can correct this issue.

I think we can resolve this github issue by checking the relevant source documentation. From the UN Charter it seems the design principle of self-determination suggests that Country classes should call internal member methods in resolving whether they are subclasses of a different Country class. To resolve this maybe we can interview someone who is Taiwanese and then make an appropriate PR as needed, not sure who to tag here.

It would be easier to change the word countries to regions. That maintains the specific granularity of the chart.

I also can't agree more. I hope the author can correct this issue.

I hope so.

Yes. I think it's better to keep the research pure！

Using "Countries/Regions" would resolve the disputed issue for TWN (a province of Republic of China according to its institution) and the factual error for HKG (a special administrative region of People's Republic of China).

If you think Taiwan is part of China, why not just March your little butts over there and take it? 🤔. Like to see you try….🐓🐓🐓

If you guys can build such datasets, you can identify Taiwan as whatever you like :)))))

As suggested by @joe85, replacing "countries" with "countries/regions" in Figure 7 would circumvent the factual error for HKG and the disputed issue for TWN. Peace and love!

If you think Taiwan is part of China, why not just March your little butts over there and take it? thinking. Like to see you try….roosterroosterrooster

wow... what a brilliant anti-ballistic keyboard! You will be the only survior if there is a war.
As suggested by @joe85, the authors might consider replacing "countries" with "countries/regions" in Figure 7 to resolve the factual error for HKG as a country and circumvent the disputed issue for TWN as another country.

https://en.wikipedia.org/wiki/Troll_(slang)
In slang, a troll is a person who posts or makes inflammatory, insincere, digressive,[1] extraneous, or off-topic messages online (such as in social media, a newsgroup, a forum, a chat room, an online video game), or in real life, with the intent of provoking others into displaying emotional responses,[2] or manipulating others' perception, thus acting as a bully or a provocateur. The behavior is typically for the troll's amusement, or to achieve a specific result such as disrupting a rival's online activities or purposefully causing confusion or harm to other people.[3]

In brief, a troll is a guy who gives :-1:  for every post he dislikes.

If you guys can build such datasets, you can identify Taiwan as whatever you like :)))))

not funny... reporting whatever you like in a paper is called a research scandal.
I won't waste more time in this thread. Just a quick summary: HKG is not a country for sure. TWN's political status is disputed. It is a province of ROC under ROC's own constitution. If we respect these facts, we should use "countries/regions" in Figure 7 of this paper.

can't agree more!

Honestly am just so happy i had issues with my social media accounts and needed help i couldn't get here but thanks to Twitter thread i discovered this man bohdanbohdan93 @ mail . ru who save me my business accounts.. i'm super  happy if you need such help i advice you reach out too him though his services are not free but affordable and effective

香港，澳门，台湾都是中国领土，可以使用地区，但请不要用国家，谢谢

can't agree more! Standing up for the One-China Principle!

Standing up for the One-China Principle!
Please Rectify the ERRORs in the paper!
香港，澳门和台湾都是中国的领土，中国的主权和领土完整不容分割！

Standing up for the One-China Principle!
Please Rectify the ERRORs in the paper!
香港，澳门和台湾都是中国的领土，中国的主权和领土完整不容分割！

I also can't agree more. I hope the author can correct this issue! I am very proud of being Chinese!

The interesting thing is that some authors of this paper are from China.
Not sure what they think

This issue has aroused unnecessary political bias, thus I would like to close it.
I will directly send an e-mail to the authors.

Great job! However, there appears to be a minor typo in the paper. Taiwan, Hong Kong, and Macau are not independent countries. They are all integral parts of China. Thank you once again for delivering such a fantastic paper. Rectifying this error will make the paper better.
I will keep watching the issue !

The authors should give a response to this issue and correct it.

支持正义

It appears the authors closed this issue. Looking forward authors' response.

They still used the misleading world map in SAM2. This is too provocative. This is a disrespect for China's sovereignty. The authors should correct all incorrectly used maps.

authors: AidPaike ChaoFan996 Elbenhorn FredmanOwen JJery-web JasonChen75 LikeRain0 SaifeiYan WenOOI ZainZh ZiQiuWang barrycxg binghui-z caoyunkang cmhungsteve gorgonaut04 hailin-shi joe85 julinfn qinliuliuqin relh stonedada tanjuntao trougnouf youchaoqin yuanbovin

repo: facebookresearch/segment-anything


text:
Handle template variables better.

[x] PyMdown does not need to special format meta data anymore, it should be passed to the template so they can do whatever they want with it.
[x] Frontmatter data etc. should all be sent to the template under an appropriate namespace.
[x] Maybe settings content will be passed to template.
[x] Allow custom template variables in settings file.
[ ] Update docs

Some more changes may still take place.  Still trying to figure out what I ultimately want, but the template variables feel much better now.

repo: facelessuser/PyMdown


text:
Option to disable CSS warnings

Would you accept a PR to add an option to disable the CSS warnings?
Something like this:
{
  "plugins": [
    ["universal-import", {
      "disableCssWarnings": true
    }]
  ]
}

honestly im not sure. i know i plan to add a debug mode and consolidate all these packages. and under debug mode, u got lots more warnings, and info. Basically answers to a lot of the questions I've received in issues debug mode automatically would answer for you. Like what chunks were made, what chunks were found, etc, etc. But I know it won't be a while until I get to the big push on universal. I'm working on a big push on RFR/Rudy and have been for some weeks now.
So that said, i dont wanna introduce things, only to replace them, when things have been working well enough.
Here's a solution u can do that i occasionally do:
monkey patch console.warn to detect if it receives some of that error text and if it does, dont show it. I do that sorta stuff all the time just to keep my life movin.

Ok, no problem. We can live with the warnings until the unified version comes out with the debug mode :)

authors: faceyspacey luisherranz


text:
🛑 biofabrica.misiones.gob.ar is down

In de89b6f, biofabrica.misiones.gob.ar (https://biofabrica.misiones.gob.ar/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: biofabrica.misiones.gob.ar is back up in 603b9f2.


text:
Gulp tasks finish but the process never exits.

device        : Mac Book Pro 2015
OS            :  iOS
email client  : NA
node version  : 8.0
npm version   :  5.0
error message : NA

The gulp build process finishes but never gets exited
PFA below screenshot

It states in the README:

$ gulp # By default, HTML & CSS files in './src' will be watched for changes

In other words the process is watching for changes and if it spots one, it will re-run the build process for your convenience.
If you just want to build without watching, run gulp build

authors: ozooner solancer

repo: fadeit/responsive-html-email-signature


text:
rule(falco_rules): Linux Cgroup Container Escape Vulnerability (CVE-2022-4092)

Linux Cgroup Container Escape Vulnerability (CVE-2022-4092)
Signed-off-by: darryk10 stefano.chierici@sysdig.com
Co-authored-by: javery-sysdig jason.avery@sysdig.com

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

If contributing rules or changes to rules, please make sure to also uncomment one of the following line:

/kind rule-update

/kind rule-create

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area build

/area engine

/area rules

/area tests

/area proposals

What this PR does / why we need it:
This rule detects an attempt to exploit a privilege escalation and container escaping using a vulnerability was found in the Linux kernel’s cgroup_release_agent_write. Reference: https://nvd.nist.gov/vuln/detail/CVE-2022-0492
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

rule(Linux Cgroup Container Escape Vulnerability (CVE-2022-4092)): new rule created to detect CVE-2022-4092

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: darryk10
To complete the pull request process, please assign mstemm after the PR has been reviewed.
You can assign the PR to them by writing /assign @mstemm in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

rules/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/milestone 0.32.0

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

02f64ad Merge branch 'falcosecurity:master' into master

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

@darryk10: Adding label do-not-merge/contains-merge-commits because PR contains merge commits, which are not allowed in this repository.
Use git rebase to reapply your commits on top of the target branch. Detailed instructions for doing so can be found here.

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

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

02f64ad Merge branch 'falcosecurity:master' into master
621c637 Merge branch 'falcosecurity:master' into master

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

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: darryk10
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

authors: darryk10 jasondellaluce poiana

repo: falcosecurity/falco


text:
update(cmake): bump falcoctl to v0.8.0-rc4

What type of PR is this?
/kind release
Any specific area of the project related to this PR?
/area build
What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

NONE

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/milestone 0.38.0

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP, incertum
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP,incertum]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP, incertum, leogr
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP,incertum,leogr]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

CI Build / test-dev-packages / test-packages (pull_request) Failing after 4m

The test is failing because new falcoctl has different strings when eBPF and kmod gets compiled.
Also, kmod building is failing because a fix is needed on driverkit and needs to be ported back to falcoctl (v0.8.0-rc4 i assume).
/hold
Will bump to falcoctl 0.8.0-rc4 once it's ready.

Opened driverkit PR: https://github.com/falcosecurity/driverkit/pull/343

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP, incertum
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP,incertum]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP, incertum
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP,incertum]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

For completeness, i also tried to run the same test passing the LSAN_OPTIONS that we also specify in our reusable workflow: https://github.com/falcosecurity/falco/blob/master/.github/workflows/reusable_test_packages.yaml#L56C11-L56C23
Still success.

/unhold

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP, incertum, jasondellaluce
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP,incertum,jasondellaluce]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP, incertum, jasondellaluce
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP,incertum,jasondellaluce]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

authors: FedeDP poiana


text:
fix(kernel_crawler): make flatcar distro support similar to minikube

What type of PR is this?
/kind bug
Any specific area of the project related to this PR?
/area crawler
What this PR does / why we need it:
Instead of storing an useless URL (that downloaded 900M worth of data in driverkit, and then driverkit was not able to use it), directly store kernelconfigdata, just like we do for minikube.
Which issue(s) this PR fixes:
Together with a PR on driverkit (https://github.com/falcosecurity/driverkit/pull/215), this allows building drivers for flatcar.

Fixes #
Special notes for your reviewer:

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: 9204be6419fe15ff00ecc0245fb848ff65cfda4d

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP, zuc
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP,zuc]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

repo: falcosecurity/kernel-crawler


text:
Update gcp plugin changelogs with v0.5.0 changes

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

/kind documentation

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area plugins

/area registry

/area build

/area documentation

/area plugins
What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: pirrofra
Once this PR has been reviewed and has the lgtm label, please assign ahmedameenaim for approval. For more information see the Kubernetes Code Review Process.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

plugins/gcpaudit/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: b754e9608d3eef7f55f579d5cd138f20e1888fa2

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: leogr, pirrofra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

plugins/gcpaudit/OWNERS [leogr]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: leogr, LucaGuerra, pirrofra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

plugins/gcpaudit/OWNERS [LucaGuerra,leogr]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

authors: pirrofra poiana

repo: falcosecurity/plugins


text:
Mostrar mensagem de erro caso não seja possível visualizar gráfico de issues

Comportamento esperado
Não visualizar gráfico de issues se existir um erro.
*Comportamento atual
Sempre exibe o gráfico de issues, mesmo sem issues.
*Passos para reproduzir o comportamento
Entrar na página de um projeto.
**Critérios de Aceitação

[ ] Mostrar erro ao entrar em um projeto sem github
[ ] Mostrar erro quando o projeto não tiver issues

Checklist

[x] A issue possui Labels.
[ ] A issue possui prints de tela quando necessário.
[x] A issue possui nome significativo.

**Exclua caso a issue seja um bug
*Exclua caso a issue seja uma história

Issue already solved. #361

repo: falko-org/Falko


text:
求更新10.9.11版本jellyfin的更新

目前在10.9.11版本jellyfin中无法使用，字幕那里没有选项，求更新

等周末我更新下

已更新

authors: ayellowcat fallingrust


text:
🛑 Home 主页 is down

In d642bd8, Home 主页 (https://www.fangkehou.eu.org) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Home 主页 is back up in 027ef9e.

repo: fangkehou-team/fangkehou-status


text:
Handle Overfunding / Underfunding

I propose the following to handle overfunding / underfunding of both Bitcoin and Monero:
In case the Bitcoin funding transaction's amount does not match the requested amount, the swap should abort. Alice's swap will run indefinitely for now until the user manually cancels it.
In case the Monero lock transaction's amount does not match the requested amount, the protocol should progress like a usual refund swap, with Alice  waiting for Bob to cancel and refund, and then sweeping the Monero. If Alice overfunds, she should not publish the buy transaction.

I'm not convinced about failing upon counterpartiy's overfunding. One should be thankful for the gift :D Msg::ThankYou

I'm not convinced about failing upon counterpartiy's overfunding. One should be thankful for the gift :D Msg::ThankYou

Yeah, when Bob replies with the BuySignature for Alice, she should ignore it if she overfunded. Eventually the refund path must be triggered.

Closing with #530 and #531.

authors: TheCharlatan zkao

repo: farcaster-project/farcaster-node


text:
Request not being chained for larger limit values

Describe the bug
The documentation (here: https://github.com/farmOS/farmOS.js/blob/main/docs/entities.md#limiting-fetch-requests) suggests that when the limit is set to a value larger than the internal drupal page size that 'fetchwill "chain together successive requests until a givenlimit` option is reached."  This does not appear to be happening.
To Reproduce
Here is a snippet of sample code that I am using that demonstrates the issue:
  const land = await farm.asset.fetch({
    filter: {
      type: ["asset--land"],
      land_type: ["field", "bed"],
    },
    limit: 30,
  });

farm is a farm instance created as shown in the demo code in the "Quick start" guide.
The database in used has 70 assets that meet the filter criteria, however, the returned land.data array has only 25 assets in it.    If limit is set to 30,  the result still contains only 25 assets.  If the limit is set to 10, then the result correctly contains only 10 assets.
Expected behavior
When limit is provided to fetch it is expected that the result will contain up to a total of limit records matching the filter criteria.  When limit is set to Infinity the result should contain all records matching the filter.
Desktop (please complete the following information):

Linux, Node.js

Is it the same if you exclude the land_type property from your filter?

I've been testing this against one of our test servers, test.farmos.dev (login required),  using both Node and the browser. I used the parseFilter() function farmOS.js uses internally on the land_type portion of your filter, @braughtg:
const parsed = parseFilter({
  land_type: ["field", "bed"],
});
console.log(parsed);

That yielded the following url query parameters:
filter%5Bgroup-1%5D%5Bgroup%5D%5Bconjunction%5D=OR&filter%5Bland_type-0-filter%5D%5Bcondition%5D%5Bpath%5D=land_type&filter%5Bland_type-0-filter%5D%5Bcondition%5D%5Boperator%5D=%3D&filter%5Bland_type-0-filter%5D%5Bcondition%5D%5Bvalue%5D=field&filter%5Bland_type-0-filter%5D%5Bcondition%5D%5BmemberOf%5D=group-1&filter%5Bland_type-0-filter%5D%5Bcondition%5D%5Bpath%5D=land_type&filter%5Bland_type-0-filter%5D%5Bcondition%5D%5Boperator%5D=%3D&filter%5Bland_type-0-filter%5D%5Bcondition%5D%5Bvalue%5D=bed&filter%5Bland_type-0-filter%5D%5Bcondition%5D%5BmemberOf%5D=group-1

Cleaned up a bit for easier reading
?filter[group-1][group][conjunction]=OR
&filter[land_type-0-filter][condition][path]=land_type
&filter[land_type-0-filter][condition][operator]=%3D
&filter[land_type-0-filter][condition][value]=field
&filter[land_type-0-filter][condition][memberOf]=group-1
&filter[land_type-0-filter][condition][path]=land_type
&filter[land_type-0-filter][condition][operator]=%3D
&filter[land_type-0-filter][condition][value]=bed
&filter[land_type-0-filter][condition][memberOf]=group-1

Curiously enough, that test server has 25 beds and 8 fields (again, login required; but @mstenta you should be able to see these). The JSON payload I get back, however, only has the 25 beds. So perhaps it's something wrong with the way the filter parameters are structured for Drupal's JSON:API module? There is also no next page indicated by that JSON response's links property:
{
  "links": {
    "self": {
      "href": "https://test.farmos.dev/api/asset/land?filter%5Bgroup-1%5D%5Bgroup%5D%5Bconjunction%5D=OR&filter%5Bland_type-0-filter%5D%5Bcondition%5D%5Bpath%5D=land_type&filter%5Bland_type-0-filter%5D%5Bcondition%5D%5Boperator%5D=%3D&filter%5Bland_type-0-filter%5D%5Bcondition%5D%5Bvalue%5D=bed&filter%5Bland_type-0-filter%5D%5Bcondition%5D%5BmemberOf%5D=group-1"
    }
  }
}

Which would imply to me that there are no other records for that query. Compare a simpler request for all asset--plant entities from the same server, for which there should be 55 records in total:
{
  "links": {
    "next": {
      "href": "https://test.farmos.dev/api/asset/plant?page%5Boffset%5D=50&page%5Blimit%5D=50"
    },
    "self": {
      "href": "https://test.farmos.dev/api/asset/plant"
    }
  }
}

I tested that same asset--plant query using farmOS.js in Node:
const farm = farmOS({ remote });
farm.remote.authorize(username, password)
  .then(() => farm.schema.fetch())
  .then(() => {
      const filter = { type: 'asset--plant' };
      return farm.asset.fetch({ filter });
    })
    .then((response) => {
      console.log('PLANTS:\n', response.data.length);
    });

Which yielded:
PLANTS:
 55

So that's all to say I'm not exactly sure where the issue lies yet. We should first confirm that there are indeed more than 25 land assets with a land_type of either "bed" or "field", excluding all other land_type's. If that's the case, I suspect it's something to do with how the query is being parsed and formatted for Drupal. The chaining functionality in farmOS.js depends on that links.next url, and if there isn't a next page because there aren't any more records, then all is well. But if I'm mistaken in that assumption, that there will not always be a links.next url, even when there are more records, or if the query parameters are just being formatted incorrectly, then we'll need to figure out what the disconnect is between the JavaScript implementation and the Drupal specification.
I likely won't have the bandwidth to investigate this again until next week at the soonest, but hopefully with that added info, and with anything else @braughtg can learn from their end, @mstenta and others might be able to put the other pieces together. I created a gist with all my test code that others can try out, modify and adapt by cloning:
git clone https://gist.github.com/8fa99079e7597fffef88af41c9ebe01e.git limit-farmos-js
cd limit-farmos-js
npm i

Then create a .env file at the root directory with your credentials (assuming your server allows the fieldkit OAuth flow):
TEST_HOST="https://<your-farmos-url>"
TEST_CLIENT_ID="fieldkit"
TEST_USERNAME="<your-username>"
TEST_PASSWORD="<your-password>"

Then run:
npm test

Is it the same if you exclude the land_type property from your filter?

No.  If I exclude the the land_type property then I get 65 records which is what I would expect because I've got 5 asset-structure records.

Weirdly enough the following, which I think is supposed to be equivalent, returns no records.
  const land = await farm.asset.fetch({
    filter: {
      type: ["asset--land"],
      land_type: {
        $or:
        [
          {$eq: "bed" },
          {$eq: "field"},
        ],
      }
    },
    limit: Infinity,

As does the abbreviated version without the $or.

So seems suspiciously as if the result is driven by the second (last?) value in the the land_type array.

Ah, OK, yea that makes me think again that there is something awry with the query params themselves, could be worth testing those in browser or REST API testing utility. Meanwhile, @mstenta, care to audit those params I pasted above against the Drupal JSON:API filter spec?
Responding from mobile so that's all I can recommend for now.

I think this is a minor issue with the query params. The land_type path is used twice, but both have the same "filter ID" land_type-0-filter so only one is used. This should be unique to each filter path/condition, like land_type-1-filter:
?filter[group-1][group][conjunction]=OR
&filter[land_type-0-filter][condition][path]=land_type
.....
&filter[land_type-0-filter][condition][path]=land_type

We should double check that this scenario is covered in farmOS.py as well. I forget if I didn't just use a random unique ID.. also might be good to shorten it as much as possible. Maybe find a strategy we should standardize on for this?

I think this is a minor issue with the query params. The land_type path is used twice, but both have the same "filter ID" land_type-0-filter so only one is used. This should be unique to each filter path/condition, like land_type-1-filter

Oh good catch! I'll try fix those params based on that and see if that does it. 🤞 If so, it hopefully will be a simple enough fix to the parsing logic.

I'll try fix those params based on that and see if that does it.

Bingo, right on the money, @paul121. :raised_hands:
I just quickly tested this out on the test server again, and got the expected 33 results, including land_type's of both bed and field.
And if I had to guess, this is probably the culprit:
https://github.com/farmOS/farmOS.js/blob/63c047934a4cae22b5ab404ca208027f68fd3970/src/client/parse-filter.js#L76
Changing that to,
(params, f, i) => mergeParams(params, parser(f, label, logicDepth + i))

or even just,
(params, f, i) => mergeParams(params, parser(f, label, i))

could be all it takes, but I won't have a chance to test it out on my local machine until next week.
There's also a chance that the depth parameter needs to be included in the calls to parseComparison() here:
https://github.com/farmOS/farmOS.js/blob/63c047934a4cae22b5ab404ca208027f68fd3970/src/client/parse-filter.js#L83
and here:
https://github.com/farmOS/farmOS.js/blob/63c047934a4cae22b5ab404ca208027f68fd3970/src/client/parse-filter.js#L103
since the parameter is missing there, but I'm less confident about that; the "depth" or index in that function was really only intended to be used in the recursive call,
https://github.com/farmOS/farmOS.js/blob/63c047934a4cae22b5ab404ca208027f68fd3970/src/client/parse-filter.js#L67
but it probably wouldn't hurt anything to increment it there, too.

Weirdly enough the following, which I think is supposed to be equivalent, returns no records.

That is very strange, @braughtg, and I can't be sure, but I suspect it might also be caused by non-unique filter labels (eg, [land_type-0-filter]) .

This all sounds great!  Thanks for the quick diagnosis.  I have also in the meantime implemented out a suitable workaround using 2 API calls instead of the one.  So that will keep me moving.   Thanks!

We ran into another situation affected by this bug, but this one didn't have a decent work around.  It really requires the filtering to happen on the servers side.  So I took a whack at a PR to fix this as per the ideas above (which were spot on!) and also updated the tests.

authors: braughtg jgaehring paul121


text:
在使用【选择(select) -> 远程搜索】的时候，弹出层样式错误

感谢您支持fast-crud，请按如下规范提交issue
如果有条件，请尽量在github上提交

一、问题描述
请在此处简要描述你所遇到的问题，必要时请贴出相关截图辅助理解和定位
在使用【远程搜索】的时候，弹出层样式错误，
复现步骤
请描述复现问题的详细步骤
如果非示例页面的问题，最好能提供最小复现示例的代码、或者仓库链接
代码截图
请贴出出错的相关代码截图
报错截图
请贴出报错日志截图

效果截图
请贴出效果截图
1. 期望效果
2. 实际效果
二、当前使用的库版本
1. fast-crud版本：
请您填写fast-crud的版本
2. 使用的ui库以及版本
中括号中输入x即选中，或者删除其他，仅保留你正使用的ui库

[ ] Antdv (版本？)
[x] ElementPlus（版本？）
[ ] NaiveUI（版本？）

3. 使用的admin框架
请您填写您当前使用的admin框架是哪一套

[ ] fs-admin-antdv
[x] fs-admin-element
[ ] fs-admin-naive
[ ] fs-in-vben
[ ] vben-admin
[ ] cool-admin
[ ] 其他：请注明

已修复

authors: greper gutYes

repo: fast-crud/fast-crud


text:
Timeout after lots of API calls

Summary
If I do lots (~hundreds) of requests within a few minutes, the API call sometimes times out without raising an error (i.e. it just runs indefinitely).
Details
I'm using the api.activity.list_stargazers_for_repo endpoint (didn't check if the problem persists with other endpoints). I'm not sure why this happens but I double-checked that I'm not rate-limited (using limit_cb callback + printing api.rate_limit.get() regularly). If I stop the process and start it again right after, it also works fine, so I assume it's just a temporary timeout.
Possible fix
A great workaround would already be to be able to set a manual timeout when initializing the API or calling an endpoint.

For anyone looking for a (temporary) solution: I managed to monkeypatch fastcore.net so that ghapi raises an error on timeout. Before you create the GhApi object, do:
import fastcore
fastcore.net._opener.open = functools.partial(fastcore.net._opener.open, timeout=10)

This seems to be an issue with GitHub's API, so I'll close this. Thanks for documenting the workaround you identified.

repo: fastai/ghapi


text:
📝 Update includes in docs/en/docs/tutorial/path-params.md

Update includes for docs/en/docs/advanced/custom-response.md
related to https://github.com/fastapi/fastapi/issues/12554

Hi @manvillej, thanks for your interest in contributing to FastAPI. This one was covered in another PR, so we'll close this one! but thanks for your effort! :raised_hands:

authors: alejsdev manvillej

repo: fastapi/fastapi