Error using IN list on  dictionary encoded data: InList does not support datatype Dictionary(Int32, Utf8).

Describe the bug
I am writing a query to select some values from a dictionary encoded string column trace_id and I get an error
select * from spans where trace_id   IN ('187dcbbc68a83a0d', '335424324532');

Results in this error
This feature is not implemented: InList does not support datatype Dictionary(Int32, Utf8).

To Reproduce
Run this test:

diff --git a/datafusion/core/tests/sql/predicates.rs b/datafusion/core/tests/sql/predicates.rs
index 07e016a27..5109f0167 100644
--- a/datafusion/core/tests/sql/predicates.rs
+++ b/datafusion/core/tests/sql/predicates.rs
@@ -427,6 +427,32 @@ async fn csv_in_set_test() -> Result<()> {
     Ok(())
 }

+#[tokio::test]
+async fn in_set_string_dictionaries() -> Result<()> {
+    let input = vec![Some("foo"), Some("bar"), None, Some("fazzz")]
+        .into_iter()
+        .collect::<DictionaryArray<Int32Type>>();
+
+    let batch = RecordBatch::try_from_iter(vec![("c1", Arc::new(input) as _)]).unwrap();
+
+    let ctx = SessionContext::new();
+    ctx.register_batch("test", batch)?;
+
+    let sql = "SELECT * FROM test WHERE c1 IN ('foo', 'Bar', 'fazz')";
+    let actual = execute_to_batches(&ctx, sql).await;
+    let expected = vec![
+        "+-------+",
+        "| c1    |",
+        "+-------+",
+        "| foo   |",
+        "| fazzz |",
+        "+-------+",
+    ];
+
+    assert_batches_eq!(expected, &actual);
+    Ok(())
+}
+

Results in
thread 'sql::predicates::in_set_string_dictionaries' panicked at 'called `Result::unwrap()` on an `Err` value: "ArrowError(ExternalError(NotImplemented(\"InList does not support datatype Dictionary(Int32, Utf8).\"))) at ...

Expected behavior
Test should pass
Additional context
Found this in IOx as part of https://github.com/influxdata/influxdb_iox/issues/5959

@NGA-TRAN  says she plans to work on this

I am actively working on this


How are you supposed to login to the cli if you chose to use google login when doing the trial?

You can set a password in your account: https://accounts.platform.sh/user/password

I've added that to the platform help login output (in commit https://github.com/platformsh/platformsh-cli/commit/ffc333c53dc3319d42eea0518bd0e98ff727dc54)


CCL Developer Install Broken for OSX Mojave

Attempting to install CCL on macOS Mojave hits an error of:
fatal error: 'stdio.h' file not found - this appears to be caused due to the Mojave moving files outside of standard locations. (see:  https://stackoverflow.com/questions/52702738/stdio-h-not-found-during-r-package-installation)
I have no clue how to fix this.

https://silvae86.github.io/sysadmin/mac/osx/mojave/beta/libxml2/2018/07/05/fixing-missing-headers-for-homebrew-in-mac-osx-mojave/

Is it possible to work a correction for this into the installer somehow, or is it just worth adding fix instructions to the install information if this works?

This is all about macs. I'd say we let it ride.  We should add docs.

I've confirmed this fix works. I'll add it to known install issues and close this for now, since we don't want to change the installer to handle a specific absurdity of a specific Mac install.

FYI am sitting with someone at the DES meeting and we encountered this issue on her laptop with Mojave, luckily we found this issue so she is following the fix in that link now. Just flagging another instance of this issue for posterity.

I don’t think we added docs on this? If not we should reopen.

I added to it here: https://github.com/LSSTDESC/CCL/wiki/Known-installation-issues

Ahhh awesome. Closing again


Modals do not have author property

Requesting a more informational class for
not sure how I would code this, but someone will have to do it someday, for this package or for discord.js

Is modal.user

Oh, the modal parameter of the modalSubmit event is the ModalSubmitInteraction class, this have the .user property, so you can access to the author of the Modal Submit Interaction.

oh i didn't know
i'd add it to the docs
thanks!


Added option to add test user to bless lambda

+1 - This is safe as long as "test_user" (or the configured name) isn't ever a valid username on any server.


hello, how to use ES6 for touchstonejs-starter, please !

touchstonejs-tasks already uses babelify behind the scene


Test and support a a wide range of possible ViewComponent project setups and structures

Right now Lookbook has only been tested with very 'vanilla' ViewComponent/Rails setups. It needs testing and patching to support the widest possible (sensible) range of different project structures/setups.

Ok I tested again trying to get as close as possible to a vanilla version but still cannot get the component to display.

removed the custom preview route
updated to the latest version of the Gem
tried removing all style sheets/ JS etc
No particular error in the browser console
No errors in the rails console
Code, output will display fine
when I click the box icon with arrow another window opens with the correct display of the component
the size of the component to display is 0px/0px

Let me know if there is anything more I could look into to help with the debug

@adrienpoly thank you that is very helpful!
So the only difference between the preview window and the preview that is displayed when you click on the box/arrow icon is that the former is rendered in an iframe using a srcdoc attribute whereas the latter is just rendered in the page. So based on what you are seeing I suspect that there is an issue with the html encoding of the preview that is causing the srcdoc attribute to choke.
I've just pushed up a branch with the srcdoc removed from the preview: https://github.com/allmarkedup/lookbook/tree/remove-preview-srcdoc which you should be able to use in your Gemfile using: gem 'lookbook', git: 'https://github.com/allmarkedup/lookbook', branch: 'remove-preview-srcdoc'
I realise this is probably taking up a lot of your time but if you have a chance to confirm if that solves the issue it would be much appreciated.

Hello Thanks for your prompt answer.
It does indeed solve the issue 🎉
Is there anything specific on my side that would be causing this ?
Also in the mean time I tried to set back the custom preview route that I had (the initial suspect) and it works too.

Excellent! At least we know what the issue is now. And good to know the custom route still works.
It's hard to know what is causing it however - to work as a string in the srcdoc attribute, the rendered HTML needs to have all its double quote marks encoded to ", otherwise the quotation mark would appear to 'end' the attribute value. That should all be handled by Lookbook... but it seems that there is still some encoding issue going on that has been missed.
Are you able to post up the source HTML for the rendered component preview? Including the <head> etc? The best place to copy it from would be the source of the 'new window' preview. If you are happy to share it then I can test it myself and see if I can replicate the problem.

Another piece of information while testing #42, I am pretty sure that 0.23 does not includes this patch BUT in staging 0.23 does work for me (but still fails to display the component in development). I will look into providing a full html extract

Ok looking into the differences between Staging and development I could identify the conflict. I am using Rack LiveReload in development and when I comment this line it works perfectly.
# config/environments/development.rb
# ....
config.middleware.insert_after ActionDispatch::Static, Rack::LiveReload

Hey @adrienpoly, sorry for the slow reply, but good work on tracking down the culprit.
I'm not quite sure yet why exactly it's causing the iframe to choke, but as an interim fix I've just released v0.2.4 that adds the option to disable use of the srcdoc attribute for anyone running into similar issues.
Obviously making sure the escaping works correctly even for injected content would be a better fix and one that I'll still try to look into. But as the srcdoc can be a bit fragile, having an option for people to disable it is not a bad thing to have anyway, I think.
Thanks again for all your help with this 👍

Hey @allmarkedup thanks for all your work on this.  Lookbook is awesome and hopefully I can find some ways to contribute.
RE: this issue, I'm currently working on getting VC and Lookbook adopted at my company so I hope to get you feedback from that.  Lookbook is actually a pretty bit selling point for the adoption.
Our app is 13 years old and I just got us on to Rails 5.0, should be 5.1 by EOM.  We're currently on Ruby 2.4 so we did have to monkey patch a bit to get Lookbook working but it was fairly minor. We'll probably be on 2.5 by the end of the month and 2.4 is EOL so I dont think it's worth adjusting but I'm happy to open a PR if you'd like. The changes are super minor and VC works on Rails 5.0+ which support Ruby 2.2+, so maybe? Your call.
Either way, as I identify opportunities or bugs I'll be sure to get them to you.  Keep up the awesome work! Can't wait to see the future of Lookbook!

Hey @DRBragg, thanks for your message - always really good to hear that people are finding Lookbook useful so appreciate you reaching out.
I'd be happy to look over a PR if you want to put one together - version parity with VC would certainly be nice :-) I don't have much insight as to what it would take to get it to work and it's unlikely something I'll have time to focus on so any input would always be welcome.
And yes if you find any bugs or have any other suggestions for improvements or feature requests please do open some issues! Would love to make Lookbook work well for as many different situations and setups as possible and any feedback will really help with that.

hey @allmarkedup,
not related to your previous comment but as I repported a few issues in the thread I just wanted to thank you for the latest 0.7.x series. I have seen I think (not benchmarked) significant improvements:

navigation between components seems much faster
when a component crash in the past I often needed to restart my server and/or some components would disapear from the left navbar (never saw that again since 0.7.2)
having the rails error displayed is very helpful in dev

🚀


Build Fails on M1 MacBook Pro

Bug Description
When installing/building using homebrew on an M1 MacBook Pro (16GB RAM), the build fails when running:
brew install --build-from-source flashlight

Reproduction Steps
brew tap bwasti/flashlight
brew install --build-from-source flashlight

02.make logs:
2022-08-27 00:57:30 +0000

make
-C
build
install
-j4

/opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -S/tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8 -B/tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build --check-build-system CMakeFiles/Makefile.cmake 0
/opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -E cmake_progress_start /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/CMakeFiles /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build//CMakeFiles/progress.marks
/Library/Developer/CommandLineTools/usr/bin/make  -f CMakeFiles/Makefile2 all
/Library/Developer/CommandLineTools/usr/bin/make  -f CMakeFiles/cereal.dir/build.make CMakeFiles/cereal.dir/depend
cd /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build && /opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -E cmake_depends "Unix Makefiles" /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8 /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8 /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/CMakeFiles/cereal.dir/DependInfo.cmake --color=
/Library/Developer/CommandLineTools/usr/bin/make  -f CMakeFiles/cereal.dir/build.make CMakeFiles/cereal.dir/build
[  1%] Creating directories for 'cereal'
/opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -Dcfgdir= -P /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/tmp/cereal-mkdirs.cmake
/opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -E touch /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal-stamp/cereal-mkdir
[  2%] Performing download step (git clone) for 'cereal'
cd /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src && /opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -P /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/tmp/cereal-gitclone.cmake
Cloning into 'cereal'...
HEAD is now at ebef1e92 Correct patch version for 1.3.2
cd /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src && /opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -E touch /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal-stamp/cereal-download
[  2%] Performing update step for 'cereal'
cd /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal && /opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -P /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/tmp/cereal-gitupdate.cmake
[  3%] No patch step for 'cereal'
/opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -E echo_append
/opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -E touch /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal-stamp/cereal-patch
[  4%] Performing configure step for 'cereal'
cd /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal && /opt/homebrew/Cellar/cmake/3.24.1/bin/cmake "-GUnix Makefiles" -C/tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/tmp/cereal-cache-Release.cmake /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal
loading initial cache file /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/tmp/cereal-cache-Release.cmake
-- The CXX compiler identification is AppleClang <IP_ADDRESS>60021
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /opt/homebrew/Library/Homebrew/shims/mac/super/clang++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Use libc++
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal
cd /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal && /opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -E touch /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal-stamp/cereal-configure
[  5%] Performing build step for 'cereal'
cd /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal && /opt/homebrew/Cellar/cmake/3.24.1/bin/cmake --build . --config Release
gmake[3]: Entering directory '/private/tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal'
gmake[3]: Leaving directory '/private/tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal'
cd /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal && /opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -E touch /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal-stamp/cereal-build
[  6%] No install step for 'cereal'
cd /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal && /opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -E echo_append
cd /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal && /opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -E touch /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal-stamp/cereal-install
[  6%] Completed 'cereal'
/opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -E make_directory /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/CMakeFiles
/opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -E touch /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/CMakeFiles/cereal-complete
/opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -E touch /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/cereal/src/cereal-stamp/cereal-done
[  6%] Built target cereal
/Library/Developer/CommandLineTools/usr/bin/make  -f CMakeFiles/flashlight.dir/build.make CMakeFiles/flashlight.dir/depend
cd /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build && /opt/homebrew/Cellar/cmake/3.24.1/bin/cmake -E cmake_depends "Unix Makefiles" /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8 /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8 /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build /tmp/flashlight-20220826-4335-vd76m4/flashlight-c343e5ccdd94cf3e079575b4d199c286eaff09b8/build/CMakeFiles/flashlight.dir/DependInfo.cmake --color=
/Library/Developer/CommandLineTools/usr/bin/make  -f CMakeFiles/flashlight.dir/build.make CMakeFiles/flashlight.dir/build
make[2]: *** read jobs pipe: Resource temporarily unavailable.

Correct, it's the Homebrew port used in shumai that was giving me the error when trying to build. (My bad, had mistakenly copied the wrong brew tap flashlight/flashlight when opening the issue; fixed in an edit a second ago).

I encountered a very similar issue on my old x86 Mac when using make -jn with n > 1, i.e., I got the following error in VERBOSE mode
/Library/Developer/CommandLineTools/usr/bin/make  -f flashlight/fl/examples/CMakeFiles/Benchmark.dir/build.make flashlight/fl/examples/CMakeFiles/Benchmark.dir/depend
make[1]: *** read jobs pipe: Resource temporarily unavailable.  Stop.
make[1]: *** Waiting for unfinished jobs...

I resolved it by updating my make from GNU Make 3.81 to GNU Make 4.3.
Also interestingly, I have GNU Make 3.81 on my M1 Mac and it works...

Issues with make -j[k] like this are typically due to compiler OOMs. It's possible newer versions of GNU Make might manage memory a bit better.
The solution's probably to swap our Homebrew formula to use cmake --build --parallel which should portably and safely parallelize the build; either that or add ninja as a build dependency for the formula.

I encountered a very similar issue on my old x86 Mac when using make -jn with n > 1, i.e., I got the following error in VERBOSE mode
/Library/Developer/CommandLineTools/usr/bin/make  -f flashlight/fl/examples/CMakeFiles/Benchmark.dir/build.make flashlight/fl/examples/CMakeFiles/Benchmark.dir/depend
make[1]: *** read jobs pipe: Resource temporarily unavailable.  Stop.
make[1]: *** Waiting for unfinished jobs...

I resolved it by updating my make from GNU Make 3.81 to GNU Make 4.3.
Also interestingly, I have GNU Make 3.81 on my M1 Mac and it works...

My apologies for the delayed response (thought I'd responded already; oops), but make --version logs GNU Make 4.3, so that doesn't appear to have been the issue I hit.

I'm able to build following the latest instructions in the README.md, so likely this was either user error (or docs being slightly off in the past), but should no longer be an issue at this time.


s32k1xx:LPSPI use DMA

Summary
Add DMA support to the s32k1 LPSPI
Impact
Reduced CPU Load.
Testing
PX4  nxp_ucans32k146 + drotek mpu9250 on lpspi0 with INT support. 9250 Clock had to be reduced to 5 MHz

@pkarashchenko Any Idea why the Mac build is faling?


[FlatList] Scrolling issues with FlatList when rows are variable height

I'm using a FlatList where each row can be of different height (and may contain a mix of both text and zero or more images from a remote server).
I cannot use getItemLayout because I don't know the height of each row (nor the previous ones) to be able to calculate.
The problem I'm facing is that I cannot scroll to the end of the list (it jumps back few rows when I try) and I'm having issues when trying to use scrollToIndex (I'm guessing due to the fact I'm missing getItemLayout).
I wrote a sample project to demonstrate the problem (simply try to scroll to the end with your finger - it won't allow you)
import React, { Component } from 'react';
import { AppRegistry, StyleSheet, Text, View, Image, FlatList } from 'react-native';
import autobind from 'autobind-decorator';

const items = count => [...Array(count)].map((v, i) => ({
    key: i,
    index: i,
    image: 'https://dummyimage.com/600x' + (((i % 4) + 1) * 50) + '/000/fff',
}));

class RemoteImage extends Component {
    constructor(props) {
        super(props);
        this.state = {
            style: { flex: 1, height: 0 },
        };
    }

    componentDidMount() {
        Image.getSize(this.props.src, (width, height) => {
            this.image = { width, height };
            this.onLayout();
        });
    }

    @autobind
    onLayout(event) {
        if (event) {
            this.layout = {
                width: event.nativeEvent.layout.width,
                height: event.nativeEvent.layout.height,
            };
        }
        if (!this.layout || !this.image || !this.image.width)
            return;
        this.setState({
            style: {
                flex: 1,
                height: Math.min(this.image.height,
                    Math.floor(this.layout.width * this.image.height / this.image.width)),
            },
        });
    }
    render() {
        return (
            <Image
                onLayout={this.onLayout}
                source={{ uri: this.props.src }}
                style={this.state.style}
                resizeMode='contain'
            />
        );
    }
}

class Row extends Component {
    @autobind
    onLayout({ nativeEvent }) {
        let { index, item, onItemLayout } = this.props;
        let height = Math.max(nativeEvent.layout.height, item.height || 0);
        if (height != item.height)
            onItemLayout(index, { height });
    }

    render() {
        let { index, image } = this.props.item;
        return (
            <View style={[styles.row, this.props.style]}>
                <Text>Header {index}</Text>
                <RemoteImage src = { image } />
                <Text>Footer {index}</Text>
            </View>
        );
    }
}

export default class FlatListTest extends Component {
    constructor(props) {
        super(props);
        this.state = { items: items(50) };
    }

    @autobind
    renderItem({ item, index }) {
        return <Row
        item={item}
        style={index&1 && styles.row_alternate || null}
        onItemLayout={this.onItemLayout}
        />;
    }

    @autobind
    onItemLayout(index, props) {
        let items = [...this.state.items];
        let item = { ...items[index], ...props };
        items[index] = { ...item, key: [item.height, item.index].join('_') };
        this.setState({ items });
    }

    render() {
        return (
            <FlatList
                    ref={ref => this.list = ref}
                    data={this.state.items}
                    renderItem={this.renderItem}
                />
        );
    }
}

const styles = StyleSheet.create({
    row: {
        padding: 5,
    },
    row_alternate: {
        backgroundColor: '#bbbbbb',
    },
});

AppRegistry.registerComponent('FlatListTest', () => FlatListTest);

@giladno why you use @autobind? maybe => its very simple js binding!

@MrChe Arrow functions are bad for performances: https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-bind.md

@giladno I'm facing the same issue. Any fixes?
Example: https://gfycat.com/SaltyBitterGermanspitz

@giladno  Very interesting information! Thk)

@ugiacoman no fix for me yet. I want to try the new 0.44 version to compare with.

@giladno v0.44 Partially fixed it for me :)

@ugiacoman please explain "partially" :)

@giladno So the FlatList correctly calculates the viewport so I can scroll all the way down. However if I add another component within the same Flexbox, it simply pushes it down and I end up not being able to scroll all the way. Now that I think about it, that may not be a bug. I need to do more testing to figure out the precise requirements so that I can ensure it renders correctly.

Hi @giladno any update for this? I am kinda facing the same problem, the current solution is to init the initialNumToRender to number of the item index i want to reach. and scrollToIndex when componentDidmounted.  But it's kinda slow

@ariona Sadly, no solution yet for me :(

I have this problem on a project of mine. My solution has been to dynamically calculate the height of each cell as a function of the data it contains, and to include the height information in the data blob I pass to the list so that I can implement getItemLayout. I block the rendering of the list on height calculation for literally every cell, which may be prohibitive for some folks depending on list length. The hardest part has been calculating the height of text, since that can depend on font, word wrapping, etc. On iOS native this can be achieved via the sizeWithAttributes: method, but there's no equivalent in React Native, so I pulled together a higher-order component that invisibly renders Text with a given style to the screen in batches, waits for onLayout to get the height, and then returns the text height via a callback prop.

@Ashoat Could you please share the code where you render the component and calculate its height? Thanks.

@gildano: np, here you go - https://gist.github.com/Ashoat/c283a40b052ae1e4571e944abcef0fd1
It's a React component called TextHeightMeasurer. You hand it:

textToMeasure - an array of strings whose heights you want to measure
allHeightsMeasuredCallback - a callback to call when measurement is completed
style - the font (size, style, decoration, etc.) and content width should be the same as it will be when rendered in the list

Besides text, it should be possible to identify the height of everything else programmatically.

@Ashoat much appreciated buddy!!

@Ashoat Could you please contact me in private (check my profile page)? I have a consulting job for you.

@giladno v0.44 doesn't fix it, I just updated and still having the same issue.

@parkerproject Yeah, that's pretty bad. I'm willing to pay for a bug fix :(

Didn't have the exact same issue as you did, but I did have the same kind of data (images + random lengths of text).
When I switched to FlatList i ran into various perf-problems I couldn't get out of. Switching back to ListView solved it for me. Too bad, since the FlatList api is so much nicer.

@ippa Thanks, I was originally using ListView and it was ok, the problem is that it doesn't support jump to item, which is crucial in my case.

@Ashoat TextHeightMeasurer looks like it'll be hand thanks! How do you use it within an app though? Is it meant to replace a  component or do you iterate through records and render the TextHeightMeasurer component off screen then display the list once the measurements are ready?

It's sorta like StatusBar, it doesn't render anything so you can place it anywhere. I place it in the same View my FlatList is in.
The version in the gist I linked above probably has a bug or two, here's the latest version: https://github.com/Ashoat/squadcal/blob/master/native/text-height-measurer.react.js

Nice, thanks.
I ended up using onLayout then storing the dimensions of each cell.
I then used onViewableItemsChanged to determine whether a cell should be visible or not and stored this information too.
Finally, the render method checks whether the cell should be visible or not. If not it returns an empty view with the previously stored version (otherwise cells would jump around).
Additionally onViewableItemsChanged works out the direction that the scroll view is moving based on which cells are being removed. It then adds make sure there's always X cells visible before of the first cell and X cells visible after the last cell.
Doing this means I can now scroll through a lot more cells and the user only sees the blank cells in rare cases (a really low res image could be used to help with design).
I'll release it as a component next week some time.

@ippa what perf issues did you have migrating off ListView?

@giladno: does FlatList have any more problems than ListView for you, or is it mostly just the scrollToIndex with variable height problem?

This issue is more to do with the styling. My approach was to add footer component, though it might not be the optimal solution, it gets the job done for now
ListFooterComponent={() => (                   <View style={{ height: 150 }} />                 )}
You can adjust the height to meet you needs

I'm guessing there is an issue with the layout of your screen that's not FlatList specific. Try mucking with the style prop. A complete code snippet for the whole page might help others identify the bug.

This may be a dumb question, but is there a reason you're not using "scrollToEnd()"?
I had a pretty big issue with this until I attached that. I was adding dynamically sized components, and it wasn't going all the way to the bottom. Note, that it doesn't fire properly under "componentDidUpdate()" so I created my own method which fires it:
scrollToBottom() {
    // Settimeout needed here to wait for the page module to be added so scroll works properly
    setTimeout(this.refs.listView.scrollToEnd, 0)
}

I'm not sure if this is NEEDED or I'm just missing something, but it's far easier than calculating each individual component size (unless you need to go to a specific component, not the bottom).

+1 I have met the similar issuse . any progress here ?

@OrganicCat when do you call your scrollToBottom? When I try to call scrollToEnd too quickly (something faster than 1 second after the constructor) it doesn't scroll.

  componentDidUpdate() {
     this.scrollToBottom()
  }

Also, I changed my timeout to 100 miliseconds.

Hi there! This issue is being closed because it has been inactive for a while. Maybe the issue has been fixed in a recent release, or perhaps it is not affecting a lot of people. Either way, we're automatically closing issues after a period of inactivity. Please do not take it personally!
If you think this issue should definitely remain open, please let us know. The following information is helpful when it comes to determining if the issue should be re-opened:

Does the issue still reproduce on the latest release candidate? Post a comment with the version you tested.
If so, is there any information missing from the bug report? Post a comment with all the information required by the issue template.
Is there a pull request that addresses this issue? Post a comment with the PR number so we can follow up.

If you would like to work on a patch to fix the issue, contributions are very welcome! Read through the contribution guide, and feel free to hop into #react-native if you need help planning your contribution.

you should not close the issue unless it's fixed , I'm having the same issue , I'm using a custom TreeView based on Flatlists , when you click on item the sub item will be visible then the height will be dynamic and the scrollToIndex doesn't work properly!

This issue still occurs to me on 0.47...

Same with 0.46... :(

For me, using initialNumToRender with <FlatList ... style={{ flexGrow: 1}} /> works with 0.46

@lprhodes would love too see your onViewableItemsChanged logic!
I'm currently experiencing jumps due to objects reverting to their collapsed state once they are off screen  (via onViewableItemsChanged) after the fact that a scrollToIndex was triggered by a user expanding some other, viewable, collapsed item.

nevermind fixed the jumping by slowing down the collapsing item animation and setting
viewabilityConfig={{ viewAreaCoveragePercentThreshold: 35 }}
on the flatlist so that expanded items start collapsing while partially off the screen as opposed to completely off screen, now it looks way better.

same issue, and this seems to be the standard behaviour. in the example page https://facebook.github.io/react-native/docs/using-a-listview.html if you add a lot of items to the FlatList example you will see that scrolling doesn't work properly, you scroll and then it gets back up to the beginning.
@hramos it's not nice to see you close a lot of react-native related issues due to inactivity, what's the point of this? at least have the documentation up to date, if this is the standard behaviour it should say so in the docs.

Sorry, looking at this again I see what the issue is (although it doesn't seem to match a lot of the "me too" comments so I wonder the original issue was was edited? Sure would be nice if github let you see edit history).
In any case, it sounds like you're hitting the first caveat described in the docs. Quoting from https://facebook.github.io/react-native/docs/flatlist.html:

Internal state is not preserved when content scrolls out of the render window. Make sure all your data is captured in the item data or external stores like Flux, Redux, or Relay.

So when your items scroll out of the render window, they lose their state which included the height from the async getImage callback (or onLayout). When they are back in the window (note fast scrolling will shrink the window and then it will try to grow in both directions once scrolling stops) they will render their images with zero height at first, then get the height again, and then adjust the height and push all the items below them down.
There are many ways to get around this. One would be a simple synchronous cache of src -> height that you would read from when initializing your state. But you already did the work of storing the height in the state of the FlatListTest component, you just never use it - you could pass this.props.item.height back in as a prop to your RemoteImage component and use that to initialize the state as well.
In conclusion, I don't see anything here that's not a documented caveat with a clear workaround, so this will remain closed as a won't fix. If you disagree, make a clear case or open a separate issue (and feel free to tag me on it).

I think @eballeste is probably having that render window issue as well.
BUT, as for the bottom content not being reachable, I still think it probably has to do with the layout of the rest of the app. @victorbadila mentioned it's reproable in the demo app, but it also repros with a plain ScrollView and ListView, not just FlatList. I'm guessing that something is messed up a shared component like the navigation library, or something like that. The proper fix will depend on the rest of the app, but you can also just add some marginBottom.

@sahrens, nope! I'm good, I found the viewOffset parameter for the FlatList.scrollToIndex method. My feed feels really good.

Great to hear!

I use onLayout callback and inside it scrollToEnd work as expected, without getItemLayout implementation

I use that method too but when i want to navigate to 200th item it has long delay.
For now i use react-native-recyclerview-list but it only available for android.

I'm having the same issue: a flatlist with variable height items and scrollToIndex not scrolling to the right position.
But I noticed something interesting, the FlatList scrolls to the right position to then adjust to the wrong position:
Here is an example of the behaviour:

https://exp.host/@xavieramoros/snack-SyN4FJikz
source code:
https://github.com/xavieramoros/flatlist-initialScrollIndexIssue/blob/master/App.js
Expo 22 - RN 0.49
If the FlatList is able to scroll (even if briefly) to the right index, couldn't we just find a way make it stay there?
I tried adding:

viewabilityConfig={{ viewAreaCoveragePercentThreshold: 35 }}
as @eballeste suggested, didn't work for me.

My last option is to previously calculate the height of each item (what @Ashoat suggested), but it's hard since in my original project I'm rendering facebook posts, tweets, instagram posts, blogs posts all with variable text and images.

@xavieramoros, that's what I'm doing, I save the heights of the rendered
rows in my redux state and use the viewOffset parameter of the
scrollToIndex method to compensate for that jump that you see.
The viewabilityConfig.viewAreaCoveragePercentThreshold prop I use to
figure out when should the row be considered to be out of screen.
On Nov 17, 2017 5:42 AM, "xavieramoros"<EMAIL_ADDRESS>wrote:
I'm having the same issue: a flatlist with variable height items and
scrollToIndex not scrolling to the right position.
But I noticed something interesting, the FlatList scrolls to the right
position to then adjust to the wrong position:
Here is an example of the behaviour:
[image: flatlistscrolling]
https://user-images.githubusercontent.com/347030/32942996-fc1e1b44-cb8a-11e7-9fd4-36313c72490e.gif
https://exp.host/@xavieramoros/snack-SyN4FJikz
source code:
https://github.com/xavieramoros/flatlist-initialScrollIndexIssue/blob/
master/App.js
Expo 22 - RN 0.49
If the FlatList is able to scroll (even if briefly) to the right index,
couldn't we just find a way make it stay there?
I tried adding:
viewabilityConfig={{ viewAreaCoveragePercentThreshold: 35 }}
as @eballeste https://github.com/eballeste suggested, didn't work for me.
My last option is to previously calculate the height of each item (what
@Ashoat https://github.com/ashoat suggested), but it's hard since in my
original project I'm rendering facebook posts, tweets, instagram posts,
blogs posts all with variable text and images.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/facebook/react-native/issues/13727#issuecomment-345208544,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGmnTKEhRzYYC7dzYeo1JoaCi3N2IGvsks5s3WMRgaJpZM4NNhQK
.

Solved this by specifying both getItemLayout and abandoning initialScrollIndex in favor of calling scrollToOffset within onLayout.
I had a list of ~300 elements with variable heights. I knew ahead of time that certain rows would be of certain heights, so i pre-computed each row height (for length property) and cumulative row height (for offset property) to use in getItemLayout. then i used onLayout to call scrollToOffset.
Was getting (1) blank screens, (2) jittery movement, (3) flashes of the correct UI suddenly disappearing etc... before this fix.
const cumulativeRowHeights = [
  0,
  ...rowHeights.reduce(function(soFar, current) {
    const next = (soFar[soFar.length - 1] || 0) + current;
    soFar.push(next);
    return soFar;
  }, [])
].slice(0, data.length);

getItemLayout = (data, index) => {
        const length = rowHeights[index];
        const offset = cumulativeRowHeights[index];
        return {length, offset, index};
}

onLayout = () => this.listRef.scrollToOffset(cumulativeRowHeights[desiredIndex])

Sorry for the late reply, what you mention @eballeste is very similar to what @pcattori uses. It's easy  to calculate the offset when you know the height of the elements. I've updated the snack with both approaches (scrollToIndex and scrollToOffset) working correctly :
https://exp.host/@xavieramoros/snack-SyN4FJikz
But in my (real) case, my problem is that calculating the height of the elements is quite difficult . I was trying to find another way but I'll have to stick to these two for now.
Thanks both!

Hi @xavieramoros Can I look at the https://exp.host/@xavieramoros/snack-SyN4FJikz  source code？ thx！

I have the same issue.

This worked for me:

Still haven't been able to find a solution

thi smy be usefull if any one have problem with scrolling
<FlatList numColumns={3} columnWrapperStyle={{
                flex:1,
                flexDirection:'row',
                flexWrap:'wrap',
            }}

I have the same issue. https://github.com/godness84/react-native-recyclerview-list can solve this issue only for android.
But I still don't know how to implement this feature in iOS.

I did not find any way to use getItemLayout  when the rows have variable heights , So you can not use initialScrollIndex .
But I have a solution that may be a bit slow:
You can use scrollToIndex ,  but when your item is rendered . So you need initialNumToRender .
You have to wait for the item to be rendered and after use  scrollToIndex so you can not use scrollToIndex in componentDidMount .
The only solution that comes to my mind is using scrollToIndex in onViewableItemsChanged . Take note of the example below :
In this example, we want to go to item this.props.index as soon as this component is run
constructor(props){

        this.goToIndex = true;

    }

render() {
        return (

                <FlatList
                    ref={component => {this.myFlatList = component;}}
                    data={data}
                    renderItem={({item})=>this._renderItem(item)}
                    keyExtractor={(item,index)=>index.toString()}
                    initialNumToRender={this.props.index}
                    onViewableItemsChanged={({ viewableItems }) => {
                        if (this.goToIndex){
                            this.goToIndex = false;
                            setTimeout(() => { this.myFlatList.scrollToIndex({index:this.props.index}); }, 10);
                        }
                    }}
                />

        );
    }


Fix replacing of module.exports

@zxqfox seems that it's okay now

Coverage remained the same at 100.0% when pulling edaa0b64226f3fd206669c3350b864fb95ab709b on yeti-or.fix-primitives into 93966b0c83a7d2515c72341abd49875cd4d655f0 on master.

LGTM


No such file or directory: 'C:\Users\LiuJunshan\Desktop\DeepKE-main\DeepKE-main\example\re\standard\data/out\train.pkl'

[2024-03-04 22:09:13,485][main][INFO] - device: cpu
[2024-03-04 22:09:13,486][utils.ioUtils][INFO] - load data from C:\Users\LiuJunshan\Desktop\DeepKE-main\DeepKE-main\example\re\standard\data/out\train.pkl
Traceback (most recent call last):
File "C:\Users\LiuJunshan\Desktop\DeepKE-main\DeepKE-main\example\re\standard\run.py", line 74, in main
train_dataset = CustomDataset(train_data_path)
File "C:\Users\LiuJunshan\miniconda3\envs\deepke\lib\site-packages\deepke\relation_extraction\standard\tools\dataset.py", line 64, in init
self.file = load_pkl(fp)
File "C:\Users\LiuJunshan\miniconda3\envs\deepke\lib\site-packages\deepke\attribution_extraction\standard\utils\ioUtils.py", line 36, in load_pkl
with open(fp, 'rb') as f:
FileNotFoundError: [Errno 2] No such file or directory: 'C:\Users\LiuJunshan\Desktop\DeepKE-main\DeepKE-main\example\re\standard\data/out\train.pkl'
Set the environment variable HYDRA_FULL_ERROR=1 for a complete stack trace.

FileNotFoundError: [Errno 2] No such file or directory: 'C:\Users\LiuJunshan\Desktop\DeepKE-main\DeepKE-main\example\re\standard\data/out\train.pkl'
请您自行检查一下对应路径下是否有文件夹和相应文件，如standard下的data文件夹、out文件夹

"data/out" is the path style of Linux. However, you are using Windows OS. Please rectify the path.

请问您的问题解决了吗


Landscape Support

Now that we are fully reliant on the config.xml, lets ensure that landscape does not regress.

Tested on iOS and Android.

Looks as thought Windows Phone support portrait or landscape, but not both. @purplecabbage will investigate this further for us.

Updated the title and punting this issue into the Backlog, since we need to wait on a Cordova-level patch.


Silent Authentication without Microsoft Login page

Is there any way user can be authenticated silently with Azure AD without redirecting to microsoft login page? I can get access token through Graph API. I don't see any option to add this access token to Skype while authenticating against SfB Online.

What are you trying to do? do you want them to interact with the controls and join meetings or are you trying to auth for something else?
if you want them to join and have video and audio, the answer is no. However you could use Anonymous join. Caveat, unless an authenticated person joins, the meeting is dead after 90 minutes of all anonymous people joined.

We don't use Azure AD for authentication into our Web App. But SfB Online only supports Azure AD Authentication. So when the user ( authenticated with our Identity) tries to initiate a conference, he is being redirected to microsoft login page where he logs in and then he is able to interact with skype web sdk.  Participants can join anonymously. But Inviting person needs to be authenticated i guess. My question would be is there any way to skip microsoft login page ?

so SfB Online supports full anonymous join. That is one of the major points of this SDK. You can register an app with azure AD which gives you key and secret that you can then use to authenticate and create adhoc meetings without ever going to the AD Page. we do this server side. You get a regular join link for meet.lync.com which could be emailed out and joined via the web client or you can build your own join page and embed the video.

Good to know that. I am a bit confused about authentication.  Do you mind sharing the link of this content if you have. I am hoping to find more info on this. If your project is in github then please share it. I am sure it would give in depth understanding about this SDK.

https://github.com/OfficeDev/skype-docs/tree/master/Skype/Trusted-Application-API/samples
check the quickstart sample that is just a console app which creates a meeting and gets the anonymous token.

The package is available via nuget in Visual Studio. Remember to check the "Pre Release" box

Hi all,
I am going to close this issue since Billy has provided good answers + a link to the docs.
John


Error checking and displaying errors

We have the errors and error positions retrieved from parsing the model.
Next, we will display the errors through a red squiggly and also include hover information.

Managed to obtain errors from the parser and display.

Now working on making the error's hover position more accurate and disabling regular hover for the positions with errors.

Realized that there might not be regular hovers for the errors. I will probably isolate the error hover implementation from the regular hover implementation. I will have to figure out how to accurately determine the start and end position of these errors. (Returns the start column to the end of the line rather than having an accurate end column).

Considering approaching error checking similar to vscode-antimony. We have grammar checks but not semantic ones. We can create an analysis.py which reads through the parse tree again and creates any error hovers based off of the rules defined in a types.py file. These should be converted to typescript during implementation.

https://tellurium.readthedocs.io/en/latest/antimony.html
Documentation of rules for antimony langauge

https://github.com/sys-bio/antimony/blob/develop/src/antimony.ypp

https://github.com/sys-bio/antimony/blob/develop/src/enums.h
https://github.com/sys-bio/antimony/blob/develop/src/variable.cpp#L743
Working on carrying over all of the defined types in enums.h into the symbol tables.


 When I entered
$ systemctl status bitcoind.service
I get the following output
bitcoind.service - Bitcoin daemon    Loaded: loaded (/etc/systemd/system/bitcoind.service; enabled; vendor preset: enabled)    Active: activating (auto-restart) (Result: exit-code) since Mon 2018-11-05 20:55:27 CST; 16s ago   Process: 1384 ExecStart=/usr/local/bin/bitcoind -daemon -conf=/home/bitcoin/.bitcoin/bitcoin.conf -pid=/home/bitcoin/.bitcoin/bitcoind.pid (code=exited, status=203/EX   Process: 1301 ExecStartPre=/bin/sh -c sleep 30 (code=exited, status=0/SUCCESS)
From what I can tell it is attempting to restart bitcoind repeatedly
One variance I noted was that when I took the step to enter the following,
$ sudo install -m 0755 -o root -g root -t /usr/local/bin bitcoin-0.17.0/bin/*
I got an output saying something like install: omitting bitcoin-0.17.0/bin/ and I could not check the version with bitcoind --version

I reinstalled the bitcoin client, following the steps and double checked all my steps from there on out. Downloading the bitcoin testnet blockchain right now. Very excited and resolved.


Update error

PS C:\Users\aleks> eso-addons-x86_64-pc-windows-msvc.exe update
✔ Updated DolgubonsLazyWritCreator!
✔ Updated ImprovedDeathRecap!
✔ Updated LibAddonMenu-2.0!
✔ Updated CombatAlerts!
✔ Updated LibLazyCrafting!
✔ Updated FancyActionBar!
✔ Updated HodorReflexes!
✔ Updated LibPrice!
✔ Updated LibCombat!
✔ Updated LibDataShare!
✔ Updated Azurah!
app error: cannot download addon https://www.esoui.com/downloads/download1245: The process cannot access the file because it is being used by another process. (os error 32)

it was running ttc client


chore: add auto merge of auto node updates

Coverage remained the same at 100.0% when pulling 10c20d63387d1db1b2b5516ef42595827220feee on add-auto-merge into 2d949bc337248687209d6f51ad0b7b181b741495 on main.

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

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


chore(deps): update terraform terraform-ibm-modules/resource-group/ibm to v1.1.0

This PR contains the following updates:

Package
Type
Update
Change

terraform-ibm-modules/resource-group/ibm (source)
module
minor
1.0.6 -> 1.1.0

Release Notes

terraform-ibm-modules/terraform-ibm-resource-group (terraform-ibm-modules/resource-group/ibm)
v1.1.0
Compare Source
Features

update terraform version constraints to >= 1.0.0, <1.6.0 (#508) (0a10be9)

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline


wally not working

hello,
i have a macOS and I am trying to get Knit to work. For some reason, according to foreman everything is installed in the foreman.toml file, however, when I run wally init my computer tells me that there is no such command. Do you know a fix? Sorry

Hello, this is not exactly a Knit issue, so I don't know how much help I will be able to provide. A couple thoughts:

Ensure you ran foreman install in the same directory as the foreman.toml file
Similarly, ensure you are running wally init in that directory
More than likely, you need to set up your PATH variable to point to the foreman bin directory


[SPARK-4526][MLLIB]Gradient should be added batch computing interface.

I think this is a great work-around the current MLlib interfaces! What bothers me is that batches will be created at every step of an algorithm, i.e. iterator of vectors in partition is passed to Gradient and Gradient most probably will stack vectors into matrix (every step!). I wonder if there is a way to pass a matrix to Gradient instead of vector.

Test build #30737 has started for   PR 3677 at commit 0f6a3bc.

Test build #30737 has finished for   PR 3677 at commit 0f6a3bc.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.
This patch does not change any dependencies.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/30737/
Test FAILed.

Merged build triggered.

Merged build started.

Test build #43781 has started for   PR 3677 at commit ad40bb5.

Test build #43781 has finished for   PR 3677 at commit ad40bb5.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/43781/
Test PASSed.


Add message about restarting node

@czue I think this is what happened with es2 earlier. Thoughts on adding a message to warn the restarter they might need to go and do things manually?
cc @proteusvacuum

I think adding a message about manual intervention is a good idea


Usage of multiple etcd backends (etcd pooling)

To avoid possible scalability issues of the multi-tenant etcd, we should investigate the usage of multiple etcd storage backends for Kamaji. It still relies on etcd multi-tenacy, just have multiple instances instead of single one. For example, having 100 of tenant clusters, we can distribute them on 10 different etcd backends.
Another usage, is when a given tenant cluster, running special workloads, is using too much APIs call and then stressing too much the etcd (i.e. the noisy neighbour). In such cases, the cluster admin can decide to migrate the tenant cluster to a dedicated etcd backend.
Currently, kamaji knows about etcd through configuration. We could keep that etcd as default and allow etcd setup through TenantControlPlane definition. A dynamic strategy to pick an etcd instance can be evaluated.

I think we're addressing this (partially?) with #138, do you agree?

Actually, Kamaji is expecting to persist all the Tenant Control Plane data in a unique DataStore that could be backed by different drivers. It should be useful to pick a different DataStore (e.g. etcd, MySQL, PostgreSQL) for a specific set of Tenant Control Plane instances.

closed by #138


feat(generator): a better default polling policy for generated LROs

Add support for constructing a google::cloud::GenericPollingPolicy from
std::shared_ptr<BasePolicy> values (in addition to the existing support
for ConcretePolicy values).
This means that a polling policy can be created from dynamic retry-policy
and backoff-policy values.
Use this in generated $service_name$DefaultOptions() functions to build
the default $service_name$PollingPolicyOption, for services with long-
running operations, from the prevailing retry and backoff policies (be
they defaulted or not) instead of from some other hard-coded policies.
One slight operation difference for completely defaulted policies is that
the LRO polling policy will now start its doubling exponential backoff at
1s (matching the backoff policy for retry loops) instead of 10s.

This change is

Supporting shared_ptr<T> as parameters for the Polling Policy SGTM.
I am not sure the default values for a RetryPolicy and BackoffPolicy are quite right for a LRO polling policy. But those can be changed without impacting the API, so let's merge this change and we can discuss good/better values for the policies later.

Ack.


Discrepency in Licensing docs

Hi,
While your documentation and official website state multiple times that Anka Develop is only licensed freely on MacBooks, some parts of the documentation don't reflect this. For example, this product matrix highlights Develop as also being licensed for iMacs, which anecdotal evidence suggests isn't the case. Can you please clear up this language to make it more obvious where Anka Develop is and isn't permitted to be used?
Thank you in advance!

Hi @mariobrostech , thanks for the ticket and for taking the time to submit it. You're right and I'll be pushing a fix for this shortly.


Fixed typos in templates for ServiceManifest.xml

Hello @rapatchi and @michaelfery,
Is there anything else should be done with the PR before merging it?

Hello @rapatchi and @michaelfery, Is there anything else should be done with the PR before merging it?

Only those with write access to this repo can merge pull requests. I think @rapatchi has it, I don't.


error when run example [simbricks-run --verbose --force pyexps/gem5_i40e_pair.py]

I changed a parameter in class Gem5Host(HostSim) in 'simmulators.py', changing 'hd_raw_path' to 'hd_path'. Otherwise the simulation will not run. But I still net an error:
VFS: Cannot open root device "sda1" or unknown-block(8,1): error -6\r']
host.client.0 OUT: ['[    0.940895] VFS: Cannot open root device "sda1" or unknown-block(8,1): error -6\r']
host.server.0 OUT: ['[    0.940935] Please append a correct "root=" boot option; here are the available partitions:\r']
host.client.0 OUT: ['[    0.940935] Please append a correct "root=" boot option; here are the available partitions:\r']
host.server.0 OUT: ['[    0.940982] 0100           16384 ram0 \r']
host.client.0 OUT: ['[    0.940982] 0100           16384 ram0 \r']
host.server.0 OUT: ['[    0.940982]  (driver?)\r']
host.client.0 OUT: ['[    0.940982]  (driver?)\r']
host.server.0 OUT: ['[    0.941018] 0101           16384 ram1 \r']
host.client.0 OUT: ['[    0.941018] 0101           16384 ram1 \r']
host.server.0 OUT: ['[    0.941018]  (driver?)\r']
host.client.0 OUT: ['[    0.941018]  (driver?)\r']
......
host.server.0 OUT: ['[    0.941630] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,1)\r']
host.client.0 OUT: ['[    0.941630] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,1)\r']
host.server.0 OUT: ['[    0.941677] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.4.46 #1\r']
host.client.0 OUT: ['[    0.941677] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.4.46 #1\r']
host.server.0 OUT: ['[    0.941710] Hardware name:  , BIOS  06/08/2008\r']
host.client.0 OUT: ['[    0.941710] Hardware name:  , BIOS  06/08/2008\r']
host.server.0 OUT: ['[    0.941735] Call Trace:\r']
host.client.0 OUT: ['[    0.941735] Call Trace:\r']
host.server.0 OUT: ['[    0.941754]  ? dump_stack+0x54/0x67\r']
host.client.0 OUT: ['[    0.941754]  ? dump_stack+0x54/0x67\r']
host.client.0 OUT: ['[    0.941776]  ? panic+0xed/0x29c\r']
host.server.0 OUT: ['[    0.941776]  ? panic+0xed/0x29c\r']
host.server.0 OUT: ['[    0.941796]  ? mount_block_root+0x2a2/0x2b1\r']
host.client.0 OUT: ['[    0.941796]  ? mount_block_root+0x2a2/0x2b1\r']
host.server.0 OUT: ['[    0.941820]  ? prepare_namespace+0x165/0x19b\r']
host.client.0 OUT: ['[    0.941820]  ? prepare_namespace+0x165/0x19b\r']
host.client.0 OUT: ['[    0.941847]  ? rest_init+0xa9/0xa9\r']
host.server.0 OUT: ['[    0.941847]  ? rest_init+0xa9/0xa9\r']
host.client.0 OUT: ['[    0.941867]  ? kernel_init+0x9/0xf4\r']
host.server.0 OUT: ['[    0.941867]  ? kernel_init+0x9/0xf4\r']
host.server.0 OUT: ['[    0.941890]  ? ret_from_fork+0x1f/0x30\r']
host.client.0 OUT: ['[    0.941890]  ? ret_from_fork+0x1f/0x30\r']
host.server.0 OUT: ['[    0.941916] Kernel Offset: disabled\r']
host.client.0 OUT: ['[    0.941916] Kernel Offset: disabled\r']
host.client.0 OUT: ['[    0.941938] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,1) ]---\r']
host.server.0 OUT: ['[    0.941938] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,1) ]---\r']
I tried to change a "root=" boot option in "gem5\configs\simbricks\simbricks.py", but it won't work. How can I solve this problem?

Hi @nanmuxx,
Just changing the gem5 image path won't work. The reason the two paths are different is that gem5 only supports the raw disk image format (results in large files, especially bad in docker images), while for qemu we can use their compressed qcow format. If you want to run gem5 simulations you have to convert the images. You can either just run make images/output-base/base.raw, but that might rebuild the base image as well if you touched any of the dependencies. Alternatively we adedd a makefile target to just convert any qcow images that you have into raw ones: make convert-images-raw. That should do the trick (after changing the config path back). Please let us know if this worked for you or not.
Cheers
Antoine

Hi @nanmuxx,
Just changing the gem5 image path won't work. The reason the two paths are different is that gem5 only supports the raw disk image format (results in large files, especially bad in docker images), while for qemu we can use their compressed qcow format. If you want to run gem5 simulations you have to convert the images. You can either just run make images/output-base/base.raw, but that might rebuild the base image as well if you touched any of the dependencies. Alternatively we adedd a makefile target to just convert any qcow images that you have into raw ones: make convert-images-raw. That should do the trick (after changing the config path back). Please let us know if this worked for you or not.
Cheers Antoine

I tried running make convert-images-raw and saw the right result. It works for me! Thank you!

Great, glad we got this sorted, and thanks for reporting. :-)


Unexpected error with self.bc_sel after nicerl2 is called

Please see the following error message fr investigation. This happened after processing multiple datasets with autonicer --checkcal --reprocess --bc --compress -i *
Migrating to<PHONE_NUMBER>
Latest NICER CALDB: xti20221001

######## Decompressing None ########
ni1060010101_0mpu7_cl.evt.tar.gz extracted
ni1060010101_0mpu2_ufa.evt.tar.gz extracted
ni1060010101_0mpu1_ufa.evt.tar.gz extracted
ni1060010101_0mpu6_ufa.evt.tar.gz extracted
ni1060010101_0mpu0_ufa.evt.tar.gz extracted
ni1060010101_0mpu4_ufa.evt.tar.gz extracted
ni1060010101_0mpu3_ufa.evt.tar.gz extracted
ni1060010101_0mpu5_ufa.evt.tar.gz extracted
ni1060010101_0mpu7_ufa.evt.tar.gz extracted
##############  Auto NICER  ##############

nicerl2 1.27
--------------------------------------------------------
      ang_dist = 0.015
      attfile = $INDIR/auxil/ni$OBSID.att
      autoscreen = YES
      br_earth = 30
      calstation = FLIGHT
      cldir = $INDIR/xti/event_cl
      cleanup = 1
      cleanup_ufa_files = 0
      clfile = $CLDIR/ni$OBSID_0mpu7_cl.evt
      clobber = 1
      cor_range = *-*
      dec = OBJ
      detlist = launch
      elv = 15
      filtcolumns = NICERV4
      geomag_columns = FILTCOLUMNS
      geomag_path = DEFAULT
      gtifiles = NONE
      gzip_thresh = 50
      history = 1
      hkdir = $INDIR/xti/hk
      hkpat = $HKDIR/ni??????????_?mpu?.hk{,.gz}
      incremental = 0
      indir = None/
      issmanfile = CALDB
      leapinit = AUTO
      min_fpm = 7
      mkfile = $INDIR/auxil/ni$OBSID.mkf
      mpugtimerge = OR
      mpugtiscr = DEFAULT
      mpulist = 0-6
      nicercal_filtexpr = EVENT_FLAGS=bxxxx00
      nicerclean_args = NONE
      nicersaafilt = YES
      nimaketime_gtiexpr = NONE
      niprefilter = 1
      niprefilter2 = 1
      niprefilter2_coltypes = FILTCOLUMNS
      noise25scr = DEFAULT
      noiseextscr = DEFAULT
      orbfile = $INDIR/auxil/ni$OBSID.orb
      overonly_expr = NONE
      overonly_range = *-30
      overonlyscr = DEFAULT
      picalfile = CALDB
      pifastcalfile = CALDB
      pirange = 20:1500
      prefilter_columns = FILTCOLUMNS
      ra = OBJ
      robofile = CALDB
      roundrobbinscr = DEFAULT
      saafilt = NO
      saaregfile = NONE
      st_valid = YES
      tasks = ALL
      timebiascalfile = CALDB
      trackfilt = YES
      trumpetfilt = YES
      trumpetkeep = GOOD
      ufafile = $CLDIR/ni$OBSID_0mpu7_ufa.evt
      ufdir = $INDIR/xti/event_uf
      ufpat = $UFDIR/ni??????????_?mpu?_uf.evt{,.gz}
      underonly_range = 0-500
      underonlyscr = DEFAULT
      vehiclefile = CALDB
  MPU List: 0-6
         Requested task operations: CALMERGE,SCREEN,MKF
       Processed prefilter_columns: NICERV4,-MPU_OVER_COUNT,-MPU_UNDER_COUNT,-MPU_XRAY_COUNT,-MPU_ALL_COUNT
   Processed niprefilter2_coltypes: BASE,NICERV4
          Processed geomag_columns: kp_potsdam.fits(KP),solarphi_oulu.fits(SOLAR_PHI),COR_NYM
ERROR: input directory None does not exist at /home/nick/heasoft-6.31/x86_64-pc-linux-gnu-libc2.35/bin/nicerl2 line 253.
Task nicerl2 1.27 terminating with status -1
Traceback (most recent call last):
  File "/home/nick/.local/lib/python3.10/site-packages/autonicer/reprocess.py", line 198, in inlist
    raise FileNotFoundError
FileNotFoundError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/nick/.local/bin/autonicer", line 8, in <module>
    sys.exit(run())
  File "/home/nick/.local/lib/python3.10/site-packages/autonicer/__init__.py", line 67, in run
    inlist(argp)
  File "/home/nick/.local/lib/python3.10/site-packages/autonicer/reprocess.py", line 210, in inlist
    reprocess_check(argp, curr_cals)
  File "/home/nick/.local/lib/python3.10/site-packages/autonicer/reprocess.py", line 175, in reprocess_check
    check.reprocess(argp.bc, argp.compress)
  File "/home/nick/.local/lib/python3.10/site-packages/autonicer/reprocess.py", line 161, in reprocess
    an.reduce(self.obsid)
  File "/home/nick/.local/lib/python3.10/site-packages/autonicer/autonicer.py", line 326, in reduce
    if self.bc_sel.lower() == "n":
AttributeError: 'bool' object has no attribute 'lower'

Reprocessed without any errors on its own.
From an initial look into the error message it appears that the bc in
class AutoNICER(object):
  def __init__(self, src=None, bc=None, comp=None):

was not set so, either error handling will need to be better implemented or this could be fixed by just changing the default value


Pin preact imports

Esm.sh might import preact dependencies using different build versions which in turn fails integrity check.
See more details here: https://github.com/denoland/fresh/issues/1063

I am not yet sure but we might need to pin twind imports as well. Let me know what you think.

OK the problem with twindv1:
twindv1.ts imports directly from esm.sh. Most likely you will have twind also in your import map.
In this case esm.sh might respond with different versions. Example:
    "https://esm.sh/v116/<EMAIL_ADDRESS>"64017de2b0dba405dad3041355b6a5c52fe2978c2badd02db010034f331d08a5",
    "https://esm.sh/v122/<EMAIL_ADDRESS>"aa5e8d6e77b9ef0968911882ea0fe12418b8108987b059471a876ac8bd45139f",

Solution is to pin all twind imports:
    "@twind/core": "https://esm.sh/@twind/core@1.1.3?pin=v122",
    "@twind/preset-tailwind": "https://esm.sh/@twind/preset-tailwind@1.1.4?pin=v122",
    "https://esm.sh/<EMAIL_ADDRESS>"https://esm.sh/v122/<EMAIL_ADDRESS>

I believe the issue of failing integrity checks was resolved by disabling the lockfile on #1186.

I believe the issue of failing integrity checks was resolved by disabling the lockfile in #1186.

Oh wow. I wasn't aware of this. I personally see the benefit of using the lock file so I will just pin all of my dependencies.
Feel free to close this PR.

Closing as I believe the answer by @ayame113 is right.


add allman style check

checks for the Phobos allman style
https://en.wikipedia.org/wiki/Indent_style#Allman_style
I couldn't find a way how to do this without looking at the raw code buffer.

Superseded by #348 - sorry about the noise.


Add automatic geolocation.

automatically determine your location through your browser. it is more convenient than manually entering coordinates.
Here is an example: http://html5demos.com/geo

Hi,
Yes,I think thats a good idea.

Hi, where I can download this version?

@anarro You can compile the source code locally. However I have uploaded SNAPSHOT version here https://oss.sonatype.org/content/repositories/snapshots/org/mycontroller/standalone/mycontroller-dist/0.0.3.Alpha2-SNAPSHOT/ You can download latest version from here. .zip and .tar.gz versions are available.


feature(update): Add hold/unhold command

Allows un/locking a program to the current version and enable/disable updates.
Close https://github.com/lukesampson/scoop/issues/3232

Relates #1941


[details: The authorization header is malformed; the region 'us-east-1' is wrong; expecting 'ap-southeast-1']

its seems that the env "AWS_REGION" is not working at 4.1
I saw there was a issue Mattermost does not read the AWS S3 region setting which is similar with the situation I encounted.
How can I fix that ? All the images are gone right now at our mattermost platform

I don't understand, is this an issue with mattermost/platform ? Seems it is not Docker related.

@pichouk  Thanks for your quick reply.  It doesn't work even we change the env variable "AWS_REGION" at the docker-compose.yml. Is it the Platform problems?

If you correctly set the env variable on your docker-compose file, I think there is no reason that the problem is on the Docker part. I think you should see on mattermost/platform repository if they have any information about this.
If it turns out that it work correctly for non-Docker deployment, we will see on our side.

OK Thanks. I see.


suggestion: allow picking a fixed price & allow enabling non host use

suggestion 1: allow setting the price (example: 10, 1000, etc) for the price in the config
suggestion 2: if you are host give others the ability to use this mod if they have this mod

Hey @kgaff
Those suggestions sound good! I will add suggestion 1 to the next release. Suggestion 2 I will probably release for v2.1.5

We will be released in 2.2.0


Allow optional output parameters by specifying a default value

BUG REPORT
When the output resource is not generated in the container, the whole workflow failed.
For example:
outputs:
      parameters:
      - name: hello
        valueFrom:
          path: /hello.json

When hello.json is not output in the container, the whole job is failed.
Is there anyway to tell argo to continue the workflow/output an empty string when the resource is not found. I believe the output artifact simply generates an empty tar ball when no resource is found.
Environment:

Argo version:
v2.1.1
Kubernetes version :
Client: 1.11
Server: 1.9+

Other debugging information (if applicable):

workflow result from argo get:
failed to save outputs: exit status 2

@yebrahim

This is essentially the same issue as #897. Will duplicate and target this for v2.2

When hello.json is not output in the container, the whole job is failed.
Is there anyway to tell argo to continue the workflow/output an empty string when the resource is > not found. I believe the output artifact simply generates an empty tar ball when no resource is found.

Actually reading it closer, @gaoning777  i think we are on opposite ends of what we feel is the right behavior.

I believe the output artifact simply generates an empty tar ball when no resource is found.

This is not ideal. For artifacts, the desired behavior is that if someone specifies an artifact path which doesn't exist, then it is considered a user error. Bug #897 is about the fact that we continue down the workflow even though the artifact path does not exist.
For parameters, I think this is also the right behavior, which according to your observations, is already happening for parameters.
One thing we might consider is having default values for output parameters. So if you have the following:
outputs:
  parameters:
  - name: hello
    default: ''
    valueFrom:
      path: /hello.json

if /hello.json does not exist, then we would return empty string, which I think addresses your use case.

In terms of workflow continuing when the artifact path is not found, I think it is reasonable to continue the workflow because the correctness of the whole workflow might not depend on the existence of a certain artifact. Users might simply want to output an artifact for some other purposes. Take a step back, it might make sense to make it configurable whether users want the workflow to stop if no artifacts are found.

jessesuen@, yes I think that would solve the problem. Thanks!

@gaoning777 reopening because if we allow default values for outputs, then it should satisfy yours and @vicaire's request. I think this is a reasonable request.

Oh, right, this is to-be-added feature.
I thought the default is already supported in output parameters.
Thanks jessesuen

This should be now doable with PR: https://github.com/argoproj/argo/pull/1277

Are default values for output parameters implemented? It's not working for me in 2.3.0. I couldn't find any documentation in that pull request, either.
Minimal non-working example:
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
  generateName: minimal-default-parameter-example-
spec:
  entrypoint: plan
  templates:
    - name: plan
      container:
        image: alpine:latest
        command: [sh, -c]
        args: ['echo hello']
      outputs:
        parameters:
        - name: message
          valueFrom:
            path: /test-file.txt
          default: "hello"

hi，@jessesuen i also have a similar problem， i want to pass some failed log messages to global output， so that other container can access the log messages. i follow your advice for default value，but it still fails with “failed to save outputs: exit status 2”. the yaml snippet  is as follows，waiting for your help，thanks！
outputs:
parameters:
- name: error-msg
default: ""
valueFrom:
path: /tmp/error.txt
globalName: global-error


url/URL: problem with the leading slash of the Path property

What version of Go are you using (go version)?
$ /c/Go/bin/go.exe version
go version go1.10.2 windows/amd64

Does this issue reproduce with the latest release?
Yes.
What operating system and processor architecture are you using (go env)?
$ /c/Go/bin/go.exe env
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\Ilya Bakhlin\AppData\Local\go-build
set GOEXE=.exe
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOOS=windows
set GOPATH=C:\Users\Ilya Bakhlin\go
set GORACE=
set GOROOT=C:\Go
set GOTMPDIR=
set GOTOOLDIR=C:\Go\pkg\tool\windows_amd64
set GCCGO=gccgo
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\ILYABA~1\AppData\Local\Temp\go-build236770806=/tmp/go-build -gno-record-gcc-switches

What did you do?
I've created a simple HTTP POST request with the *http.Client, *http.Request and *url.URL structures. The whole script is represented here.
If you read it, everything should be working, but it's not. I've figured out the problem resides in the *url.URL's Path property - according to the official documentation, whenever the Path is defined, the leading slash (/) is not necessary. But, if you add it in the script, it will work.
What did you expect to see?
{"status":"error","code":-1,"name":"ValidationError","message":"You must specify a key value"}

What did you see instead?

<title>400 Bad Request</title>

400 Bad Request

nginx/1.12.2

I've just checked the documentation, and there's nothing explaining something like that.
Maybe the problem is how the documentation is redacted. The only clear thing is that it leads to misunderstanding.

The two places I read were:
https://golang.org/pkg/net/url/#URL
https://golang.org/pkg/net/url/#Parse
If you have suggestions to improve this, please submit a documentation change.

Well... I guess I'm wrong.


Upgrade si.processes to return what cores the process is currently running on

I need the ability to know what cores a process is running on
It would be super cool if si.processes() returned which cores both physical and logical that a process is currently running on
as far as I can tell there are not many (no?) good alternatives for windows for consumer node apps
I'm trying to create an electron task manager to visualize CPU usage and a part of that is showing what cpus a process is utilizing.

@chlorophant Question: any idea how to determine on what core a process is running on windows? What I found so far is not promising: With windows internal tools it seems to be not possible to identify the core for a certain process.
For Linux there seems to be a way to do that even though most processes have multiple threads. And threads are what are sent to cores for processing, not processes.... so also here I am not quite sure how reliable this might be.


HERE LATEST WORKING SCRIPT

https://pastebin.com/2K6sGik5      use this script instead of the 5.6 one and u will be fine

still displays the same "Adblock is not allowed" whenever an ad would play

still displays the same "Adblock is not allowed" whenever an ad would play

disable any adblocker u have on your browser and use the tampermonkey+ this instead

please prefer this script it is working https://pastebin.com/2K6sGik5 just edit the previous script in the Tampermonkey with this latest one

https://pastebin.com/2K6sGik5 use this script instead of the 5.6 one and u will be fine

Great work by the way.

This is the raw copy of https://github.com/TheRealJoelmatic/RemoveAdblockThing/commit/861272fb6b4aee20cd6b59f281b2034926e174c0 in case anyone is suspicious (v5.3 that speeds up ads, wasn't tagged as release for some reason). Can copy the script there as well.


Prevent autogenerated trailing whitespaces in README

Description
Minor change in the documentation generator script to prevent autogeneration of trailing whitespaces.

Coverage remained the same at 90.203% when pulling 19d626b9b38f67d22a40665381fa0abfa6546324 on mondeja:docs-trailing-spaces into 45315f569e3095ffc1eafd0f6a88f8715c9c97fd on FantasticFiasco:master.

Thanks! Nice work!


Task quick pick prompts automatically

While working on VS Code or Jupyter repository, I found the task quick pick often prompts automatically, usually after

yarn
yarn watchd (or yarn compiled in Jupyter)

When this happens, we will see the task quick pick like you trigger it manually. Dismissing it and in a bit later it might come back.

https://user-images.githubusercontent.com/876920/200920692-58a87590-e12d-49b5-abfc-6a3e1eb9244b.mov

@rebornix that is really strange. do you have a custom keybinding set for runTask?

@meganrogge I don't have any keybindings related to tasks. And also it can prompt randomly (not right after typing). Do we have any log that can tell how the task quick pick is opened?

We do not currently. Do you know of an example where we identify the trigger source of a command?
If it is not keybindings causing this, then it's possible an extension is invoking this command directly.
https://github.com/microsoft/vscode/blob/37f1112e598e254ba5f0b7f3632a34815380eede/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts#L411

I did a search for workbench.action.tasks.runTask in extension folder and found I have boukichi.watch-run extension installed ;( Couldn't recall when I installed this extension.
It's a bummer that our log won't tell you how calls a specific command but luckily text search works.


Ability to embed YouTube videos in webview

It would be great if we can embed YouTube videos in webview when creating a VSCode Extension. YouTube videos are currently unable to be embedded via iframe due to a "Failed to construct 'PresentationRequest': The document is sandboxed and lacks the 'allow-presentation' flag.
Even with adding the allow-presentation flag in the iframe doesn't work.

This feature request is now a candidate for our backlog. The community has 60 days to upvote the issue. If it receives 20 upvotes we will move it to our backlog. If not, we will close it. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

This feature request has not yet received the 20 community upvotes it takes to make to our backlog. 10 days to go. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

:slightly_frowning_face: In the last 60 days, this feature request has received less than 20 community upvotes and we closed it. Still a big Thank You to you for taking the time to create this issue! To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

Please implement this! This will help a lot for onboarding videos.


WIP:  Sous 897 poll deploy queue

Not ready for merge, error after merging master running unit tests.  @samsalisbury It's
goroutine 2053 [chan send, 2 minutes]: github.com/opentable/sous/vendor/github.com/samsalisbury/psyringe.(*ctor).finishWithError.func1.1(0xc42053a7e0, 0x0, 0x0)         /home/jc/go/src/github.com/opentable/sous/vendor/github.com/samsalisbury/psyringe/ctor.go:125 +0x6d created by github.com/opentable/sous/vendor/github.com/samsalisbury/psyringe.(*ctor).finishWithError.func1         /home/jc/go/src/github.com/opentable/sous/vendor/github.com/samsalisbury/psyringe/ctor.go:123 +0x68

          1 Error

:no_entry_sign:
Please include a CHANGELOG entry.

          1 Warning

:warning:
PR is classed as Work in Progress

  Generated by :no_entry_sign: Danger

@samsalisbury Getting closer for ready for merge.  It's working round trip, it's got a slight deficiency compared to OTPL deploy due to how they check for deploys.  If you look at the OTPL scripts, they continue to poll on /pending and grep if the deployment id is present, they wait till not present then they switch to /history/request.  This ensures that deployment is in final state, we just check history, which seems to say SUCCEEDED well before the deployment finishes.  We might (probably) will need to mimic this behaviour, might be something to look at tomorrow if looking for things to move this forward?


Differentiate between Past Days Available and What's Returned by /api/gtc by Default

@ramonaspence
I'm thinking we should have two different date values.

the # of days in the past that available in the API pulls from Meetup and Eventbrite. This might be renaming the existing days_in_the_past to something like max_days_in_the_past_available.  We still want API requests to /api/gtc up to  current_date - max_days_in_the_past_available, but only  if the request explicitly asked for it using an earlier start date.

Then, we'd have a new  config value to set the # of days that /api/gtc returns when no start_date was passed as a GET query parameter.   This was previously 1 day and that may still make sense since we probably want the default API route to only return the current days events and what's in the future.  Maybe we call this default_days_in_the_past_returned

That make sense? What say ye?

That makes sense. So we'll have a number of past_days that the api shows by default, and a number of past_days that are available to be looked up.
I'll look at it and then post back here with how I think it could best be implemented.

In the function filter_events_by_date there is no reason to specify a start_date, correct?
This function is only called on when there are parameters given by the user via HackGreenville?
I must've gotten a little confused while I was setting that up yesterday, because I had the start_date on that function but not on get_dates()


Support Relay ID deserialization with custom Ids

Is your feature request related to a problem?
I saw that #4884 was closed, but I wanted to bring this up as a feature request again.
Recently we've switched to https://github.com/andrewlock/StronglyTypedId to catch some common mistakes, like people passing wrong Ids into our business layer.
Using something like
.AddTypeConverter<DeviceId, int>(x => x.Value)
.AddTypeConverter<int, DeviceId>(x => new DeviceId(x))
.BindRuntimeType<DeviceId, IntType>()

works great when we have an output like
public class Device
{
    [ID]
    public DeviceId Id { get; set; }
}

but sadly it doesn't work for inputs like
public Task<Device?> GetDeviceAsync(
    [ID(nameof(Device))] DeviceId deviceId,
    DeviceDataLoader dataLoader)
{
    return dataLoader.LoadAsync(deviceId);
}

and gives an error like:

Unable to convert the value of the argument deviceId to MyApp.DeviceId. Check if the requested type is correct or register a custom type converter.

Maybe I'm also missing something in my configuration, I'm not sure.
But I feel like with the registered type converters, there should be enough information to be able to support this case.
At the moment we have to take the Id as an int and convert it ourselves in each input, which isn't ideal.
The solution you'd like
The input shown above should just work out of the box, if type converters have been registered.
Product
Hot Chocolate

The same thing applies also to node resolvers. The following does not work:
[Node]
[ExtendObjectType(TypeConsts.Device)]
public class DeviceNode
{
    [NodeResolver]
    public Task<Device?> GetDeviceAsync(DeviceId id, DeviceDataLoader dataLoader)
    {
        return dataLoader.LoadAsync(convertedId);
    }
}

Currently we also need to pass the Id as int in the method and then convert it in there.

I think its two places where we would need to handle this.

@tobias-tengler Will this handle "plural fetches" as well? I can't find the issue right now but I remember seeing that only primitive types worked for an ID on "plural fetches" queries like GetMyEntitiesByIdAsync([ID(nameof(MyEntity))] ComplexIdType[] ids, ...

I have patched this for the moment in the following way in our code base:
public class TypedIdTypeInterceptor : TypeInterceptor
{
    public override void OnBeforeCompleteType(ITypeCompletionContext completionContext,
        DefinitionBase? definition, IDictionary<string, object?> contextData)
    {
        if (completionContext.IsIntrospectionType)
        {
            return;
        }

        if (definition is ObjectTypeDefinition objType)
        {
            foreach (var field in objType.Fields)
            {
                foreach (var argument in field.Arguments)
                {
                    // If we just add our formatter directly on the argument, the formatter is registered
                    // before the Relay ID formatter, which would cause incorrect results.
                    var descriptor = argument.ToDescriptor(completionContext.DescriptorContext);

                    if (argument.Parameter?.ParameterType == typeof(DeviceId))
                    {
                        descriptor.Extend().OnBeforeCompletion((c, d) =>
                        {
                            d.Formatters.Add(new DeviceIdInputValueFormatter());
                        });
                    }
                }
            }
        }
    }
}

public class DeviceIdInputValueFormatter : IInputValueFormatter
{
    public object? OnAfterDeserialize(object? runtimeValue)
    {
        if (runtimeValue is string str)
        {
            return new DeviceId(str);
        }

        return runtimeValue;
    }
}

Have to add an IInputValueFormatter for each of our typed Ids and register it from within the type interceptor, which is a bit annoying, but atleast not every resolver has to use a workaround...

hoho ... @tobias-tengler type interceptors :) BTW ... I refactored the type interceptor and broke a bit the contract for version 13. I will add an upgrade guide to the docs.

@tobias-tengler Will this handle "plural fetches" as well? I can't find the issue right now but I remember seeing that only primitive types worked for an ID on "plural fetches" queries like GetMyEntitiesByIdAsync([ID(nameof(MyEntity))] ComplexIdType[] ids, ...

I think I'm excited for your new changes. If it also fixes plural fetches, I know I will be excited... 😬

@tobias-tengler @michaelstaib Is this in any release (preview or otherwise) that I can try out? My ID is the following:
type EurodatKey {
  incId: Int!
  sqlId: Short!
}

My TypeCoverters work for singular fetches ById but plural fetches ById yells at me saying The IDS 'blah blah' have an invalid format.

This is now supported

List of custom Ids still aren't working with the new serializer, but I'll check and open another issue, if it's the case.

@tobias-tengler can you please post back here or tag me in the new issue if one is created?

@mwasson74 I can confirm that it is working in v14! The special sauce is implementing and registering a INodeIdValueSerializer for your strongly typed Id. Here's an example of this in action: https://github.com/ChilliCream/graphql-platform/pull/7238/commits/380aac1bb6caf4a2c1dff3ebb0e5e51408078484
There's still an issue if you need the new serializer to handle both the old and new Id format. I hope to address this in: https://github.com/ChilliCream/graphql-platform/pull/7238

We also will add source generator support for the ID INodeIdValueSerializer ... but this might not be in the initial release.


Add support for suffix

Very often I have seen physical barcode scanners using a carriage return to signal the end of a barcode.
could you do something to manage this ?

I actually saw what you're describing later in the day while investigating. I've done the mapping you're mentioning but I'm struggling a little with the tests .. that's my first time with both coffee script syntax and karma..
I'll do a PR within the hour I hope

Hi @serhalp , anything wrong with the PRs ?


Recompile dist CSS

Mainly because I noticed the dist css file still has all of the old classes in it, and ta-right is set to text-align: center

Should be ok now, but reopen if it's otherwise.


Configure Garden Linux image according to infrastructure provider recommendations [GCP]

What would you like to be added:
We need to make sure we adhere to the recommendations of the infrastructure providers.
Why is this needed:
We have seen subtle issues with DNS resolution, clock diversions, nvme issues, etc. due to wrong or omitted configurations.

clock source is set to tsc which appears acceptable (same on other Linux OS)
NTP server is set to the recommended one by Google (#362)
Google recommended kernel parameters are already set


Error installing pipenv on Ubuntu 18.04

Specs

Leon version: 1.0.0-beta.3
OS (or browser) version: Ubuntu 18.04
Node.js version: v13.11.0
Complete "npm run check" output: only missing TTS and STT
(if using Docker) Complete "npm run docker:check" output:
(optional) Leon package version:

Expected Behavior
Installing pipenv through pip.
Actual Behavior
Installing pipenv through pip does not install. It downloads but --version check fails.
How Do We Reproduce?
Follow installation procedures on Ubuntu 18.04.
Extra (like a sample repo to reproduce the issue, etc.)
I was able to solve the issue and get Leon running with this: https://gist.github.com/kogcyc/07c3e5d1f427c9fa6b99044d81f8ee82
I believe this issue was similar to https://github.com/leon-ai/leon/issues/36 but solved differently.

Same behaviour on Win10

hi,
you can testing this.
Open your terminal and write:
$ python3 -m site --user-base
He return:
/home/NAME/.local/bin
After write:
$ (vi, vim, atom, OR vscode) ~/.bashrc
Add this line at the end of file:
export PATH=$PATH:/home/NAME/.local/bin
Close your terminal and re open, ad testing Pipenv.
for it worked.
For windows normaly:
python -m site --user-site
C:\Users\NAME\AppData\Roaming\Python\Python36\site-packages
Good luck

Thanks for your report!
Could you please try with the latest version of the develop branch ?
Also there is now Gitpod, so you can easily start Leon directly in your browser, it is worth taking a look: https://gitpod.io/#https://github.com/leon-ai/leon


Start index

Think possibility to add value to start index.

  {{#repeat 16}}

        <img src="/images/avatar.png"<EMAIL_ADDRESS>alt="User {{@index}}">

  {{/repeat}}

  {{#repeat 16 start=17}}

        <img src="/images/avatar.png"<EMAIL_ADDRESS>alt="User {{@index}}">

  {{/repeat}}

K, I just refactored to do what you requested. This might need a little more work to register with Assemble v0.4.x. If you have problems registering please create another issue and we'll help you get it figured out

Thanks @jonschlinkert :+1:

no prob


Incorrect version number

After installing with
npm install<EMAIL_ADDRESS>Then...
postgraphql -V
Gives...
1.3.0
There is no global installation of postgraphql.
Love the project and where it is headed, by the way.

You'll need to install with the -g flag like so: npm install<EMAIL_ADDRESS>-g.
And thanks by the way 😊


CODE EXPLAINATION

`template<typename T, bool isBGR>
global void gpuTensorNorm( float2 scale, T* input, int iWidth, float* output, int oWidth, int oHeight, float multiplier, float min_value )
{
const int x = blockIdx.x * blockDim.x + threadIdx.x;
const int y = blockIdx.y * blockDim.y + threadIdx.y;
if( x >= oWidth || y >= oHeight )
	return;

const int n = oWidth * oHeight;
const int m = y * oWidth + x;

const int dx = ((float)x * scale.x);
const int dy = ((float)y * scale.y);

const T px = input[ dy * iWidth + dx ];

const float3 rgb = isBGR ? make_float3(px.z, px.y, px.x)
					: make_float3(px.x, px.y, px.z);

output[n * 0 + m] = rgb.x * multiplier + min_value;
output[n * 1 + m] = rgb.y * multiplier + min_value;
output[n * 2 + m] = rgb.z * multiplier + min_value;
printf("DETECTNET _____ %d _____ %d _____ %d \n",n * 0 + m,n * 1 + m, n * 2 + m );

}
template
cudaError_t launchTensorNorm( void* input, imageFormat format, size_t inputWidth, size_t inputHeight,
float* output, size_t outputWidth, size_t outputHeight,
const float2& range, cudaStream_t stream )
{
if( !input || !output )
return cudaErrorInvalidDevicePointer;
if( inputWidth == 0 || outputWidth == 0 || inputHeight == 0 || outputHeight == 0 )
	return cudaErrorInvalidValue;

printf(" DETECTNET DEBUG %f %f %f %f", float(inputWidth), float(outputWidth), float(inputHeight) , float(outputHeight));

const float2 scale = make_float2( float(inputWidth) / float(outputWidth),
						    float(inputHeight) / float(outputHeight) );

printf("DETECTNET _____  %f %f \n", scale.x ,scale.y );

const float multiplier = (range.y - range.x) / 255.0f;

// launch kernel
const dim3 blockDim(8, 8);
const dim3 gridDim(iDivUp(outputWidth,blockDim.x), iDivUp(outputHeight,blockDim.y));

if( format == IMAGE_RGB8 )
	gpuTensorNorm<uchar3, isBGR><<<gridDim, blockDim, 0, stream>>>(scale, (uchar3*)input, inputWidth, output, outputWidth, outputHeight, multiplier, range.x);
else if( format == IMAGE_RGBA8 )
	gpuTensorNorm<uchar4, isBGR><<<gridDim, blockDim, 0, stream>>>(scale, (uchar4*)input, inputWidth, output, outputWidth, outputHeight, multiplier, range.x);
else if( format == IMAGE_RGB32F )
	gpuTensorNorm<float3, isBGR><<<gridDim, blockDim, 0, stream>>>(scale, (float3*)input, inputWidth, output, outputWidth, outputHeight, multiplier, range.x);
else if( format == IMAGE_RGBA32F )
	gpuTensorNorm<float4, isBGR><<<gridDim, blockDim, 0, stream>>>(scale, (float4*)input, inputWidth, output, outputWidth, outputHeight, multiplier, range.x);
else
	return cudaErrorInvalidValue;

return CUDA(cudaGetLastError());

}
`
Can you please explain the code in terms of how the output is calculated?  ( tensorConvert.cu , line ~140)
@dusty-nv

That part is clear but the print statement you see at the last of the first snippets prints only 4096 times irrespective of the model input dimension ( multiple input). My end goal is to visualize the output ( after preprocessing) by printing it on terminal

@dusty-nv would really appreciate any leads to look into.

I'm not sure why it would only print 4096 times, maybe that is the limit that CUDA can printf in a kernel or something.  Regardless the print is only for debugging and you won't get realtime performance anymore.   You can also just do the printf on CPU after calling the kernel and inserting a call to cudaDeviceSynchronize() before the printf's begin.

That does make sense. Thanks for your advice, will try that too.


[BUG] Possible bug with null property?

I'm using MemoryPack v1.9.13 with a simple .NET 7 app, and I've found something strange.
This is a minimal reproducible example https://gist.github.com/jodydonetti/c5f7ff7a0a4bfed825548a0f0493ab6d
There's an ItemMetadata class which contains just 1 prop as int X.
Then there's an Item<TValue> class which contains:

a value prop TValue Value
a timestamp prop as DateTimeOffset? Moment
a metadata prop as ItemMetadata Metadata

If I serialize + deserialize an instance of Item<TValue> with the Metadata prop filled, everything works fine:

But if I do the same with the Metadata prop set to null, the deserialized Moment prop has a different value:

Am I doing something wrong or is this a bug?
Thanks!

Hi, thanks for the response!
You mean in the ItemFormatter<TValue> class, in the ItemMetadataFormatter class or both?

Also, should the sample here be updated too?

Yes!
thanks and sorry, updated ReadMe.


I am trying to add and delete items from an Animated List, getting this error!

Steps to Reproduce

Run flutter create bug.
Update the files as follows: ...
...

Expected results:
Actual results:

Logs

Hi @hiteshpatil1599
Can you please provide your flutter doctor -v and a minimal complete reproducible code sample?
Thank you

Hi @hiteshpatil1599
Can you please provide your flutter doctor -v and a minimal complete reproducible code sample?
Thank you

Without additional information, we are unfortunately not sure how to resolve this issue.
We are therefore reluctantly going to close this bug for now.
Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.
Could everyone who still has this problem please file a new issue with the exact description of what happens, logs, and the output of flutter doctor -v.
All system setups can be slightly different, so it's always better to open new issues and reference related issues.

Without additional information, we are unfortunately not sure how to resolve this issue.
We are therefore reluctantly going to close this bug for now.
Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.
Could everyone who still has this problem please file a new issue with the exact description of what happens, logs, and the output of flutter doctor -v.
All system setups can be slightly different, so it's always better to open new issues and reference related issues.


updated changelog for pending 1.0 release

:x: Build healthcareai-py 1.0.714 failed (commit https://github.com/HealthCatalyst/healthcareai-py/commit/0c7dd00d47 by @Aylr)