feat: Add Kubernetes runtime proposal

Ref #179
Proposal preview: https://github.com/gaocegege/envd/blob/proposal/docs/proposals/20220603-kubernetes-vendor.md

Other options for file syncing:

reverse sshfs https://github.com/lima-vm/sshocker
ksync https://github.com/ksync/ksync

One thing I'm concerning is that whether syncing is needed at MVP. Code should be on a PV-like thing I think and usually people works with git

My 2 cents is syncing might be needed ultimately, but might in some different ways. Let's say we are working with git, and push some new commits to a branch, I think it would be better if envd could pull the new commits automatically to simulate the local development experience.

My 2 cents is syncing might be needed ultimately, but might in some different ways. Let's say we are working with git, and push some new commits to a branch, I think it would be better if envd could pull the new commits automatically to simulate the local development experience.

Thanks for the advice! Automatic push/pull looks magic to me. And it is complex. If the container is crashed, we also may lost the commits if we do not run push.

As discussed with some infra engineers interested in envd, port-forwarding may consume many API server CPUs. And tools like virtual kubelet does not support port forwarding.

port-forwarding may consume many API server CPUs.

Would you mind elaborating? AFAIK if there is no much traffic, port-forwarding should not consume too much cpu resources, as it is simply a SPDY connection under the hood.

virtual kubelet does not support port forwarding

Indeed. But what are we going to do to access the services inside the container without port-forwarding?

Thanks for the advice! Automatic push/pull looks magic to me. And it is complex. If the container is crashed, we also may lost the commits if we do not run push.

Or, we can forget the sync things. We request users to develop on the remote container, instead of the host. The build.envd may look like this:
def build():
    base(os="ubuntu20.04", language="python3")
    install.vscode_extensions([
        "ms-python.python",
    ])
    #config.pip_index(url = "https://pypi.tuna.tsinghua.edu.cn/simple")
    install.python_packages([
        "tensorflow",
        "numpy",
    ])
    shell("zsh")
    config.jupyter(password="", port=8888)
+    config.working_dir(local=".", remote="https://github.com/tensorchord/envd.git")

But what are we going to do to access the services inside the container without port-forwarding?

They may use service and ingress to achieve this. Thus we may need a mechanism to support customization here.
Maybe just like the design of the device plugin, we provide an interface to communicate between envd and a CLI shim. The shim does the critical logic like port forwarding. The envd just communicate with the shim and show information to users.
Port forwarding can be used in our default shim, while users can write their own shim to customize, e.g. using service and ingress.

My concern is that working dir seems to be a command line argument to me, otherwise it might prevent the reuse of build.envd in different working dir, just like we don't specify the build context in Dockerfile. Besides if we need to specify the repo address, should we need to specify the branch as well?

Sounds reasonable. It should be a runtime argument instead of build time.
@VoVAllen Do you have opinion on it?

Agree it better to be a runtime option. If using git, user should handle the sync related thing by himself (clone git repo and git pull/push). Therefore  config.working_dir might not be needed.

Things to be decided:

[ ] How to support code repository, sync or git
[ ] How to support exposing services to end users, port-forward, nodePort or ingress/service
[ ] How to allow users to customize the logic without maintaining a fork of envd (plugin system)

Found one new syncing tool:
https://github.com/mutagen-io/mutagen

How is it going now?

I am still working on #261 . Currently no bandwidth for it.

I do some exp on K8S syync. Maybe I could help you or discuss with more details If you want.

I will update the Kubernetes design proposal recently. It should be elegant, and fancy.

We request users to develop on the remote container, instead of the host.

We should not assume where the user to work on
in my practice, working on remote jupyter notebook or working on local VS code, which connects to remote jupyter kernel, or working on local VS code with VS code remote development kit is the usual scenario.
on the other hand, there are a lot of algorithm engineers who do not use git as their source code management tool, they just write the code and produce some summary stuff, then the work is over, the source code does not need to manage.
file sync by envd can be a choice for the user, but can not be the only one.
how about letting the user choose how to set up their work style?
config.jupyter(password="", port=8888)
# if they want to work on a jupyter notebook
config.vscodeserver()
# or if they want to work on a VS code
config.sync(local='.', runtime='/workdir')
# or we sync their source code and datasets
# also the underhood can be a choice from volume(if the runtime is a local container)
# port-forward, nodePort, ingress, etc. if the runtime is a kubernetes

# or maybe
envd up --sync
# but `--sync` should be the default behavior
# so,
envd up -d --no-sync
# can be more practical
envd context ls
# then just print the context information
# if the runtime is a remote one
# tells users that VS code remote development kit can help with their work

The proposal is updated with significant changes, PTAL.

PTAL

@Xuanwo Thanks for your fix!

@Xuanwo Thanks for your fix!

Probably you should try Grammarly. There are still some syntax errors.

@Xuanwo Thanks for your fix!

Probably you should try Grammarly. There are still some syntax errors.

It should be fixed. PTAL.

I am merging it since we are already starting the development of envd-server.


Add support for X-Forwarded-Scheme

This brings the scheme logic up to date with the latest
rack version 1.6.1

I just copied over https://github.com/rack/rack/blob/master/lib/rack/request.rb#L70-L82

The repo is defunct, see the parent repo https://github.com/chopmo/rack-ssl.


Changing Starboard to the Trivy Operator

Starboard is being deprecated and has been replaced with the Trivy Operator. In this PR, I am updating the microk8s addon from the Starboard Helm Chart to using Trivy

Thank you for making MicroK8s better
Please reference the issue this PR is fixing, or provide a description of the problem addressed.
Also verify you have:

[x ] Read the contributions page.
[x ] Submitted the CLA form, if you are a first time contributor.

Thank you for this work @AnaisUrlichs, this update will be available in the 1.26 release.


Feature Request: Add Deno as WinGet package

The idea for this feature is simple: i.e., to make Deno available to install via WinGet for Windows.
Since Windows users can install Deno with Chocolatey or Scoop, it would be a good idea to be able to install Deno via WinGet, as it is installed by default on Windows.
Here is the link to the WinGet documentation, on how to add a package (if needed): Submit packages to Windows Package Manager

Duplicate of: https://github.com/denoland/deno/issues/5640

Sorry!


custom_jvp slows down functions

Description
I want to define a function such that one of the input arguments is the derivative order that the user wants. My actual function is far more complex but here is an example that has the same issue.
import jax
import jax.numpy as jnp
from jax.lax import fori_loop

@jax.custom_jvp
@jax.jit
def fun(x, n, dx):
    """The dx th derivative of the function x^n."""
    out = x**(n-dx)
    coef = fori_loop(0, dx, lambda i, x: x*(n-i), 1)
    return coef*out

@fun.defjvp
def _fun_jvp(a, adot):
    """Custom derivative rule for the function.

    This is just the same function called with dx+1.
    """
    (x, n, dx) = a
    (xdot, ndot, dxdot) = adot
    f = fun(x, n, dx)
    df = fun(x, n, dx+1)
    return f, df

@jax.jit
def fun2(x, n, dx):
    """Same function without custom_jvp decorator."""
    out = x**(n-dx)
    coef = fori_loop(0, dx, lambda i, x: x*(n-i), 1)
    return coef*out

x = jnp.arange(1000)
n = 10
dx = 0

assert fun(x, n, dx).all() == fun2(x, n, dx).all()

%timeit fun(x, n, dx).block_until_ready()
%timeit fun2(x, n, dx).block_until_ready()

73 μs ± 1.05 μs per loop (mean ± std. dev. of 7 runs, 10,000 loops each)
8.6 μs ± 1.26 μs per loop (mean ± std. dev. of 7 runs, 100,000 loops each)

This function calculates dxth derivative of $x^n$. So,
$$dx = 0: f(x)=x^n $$
$$dx = 1: f(x)=nx^{n-1} $$
$$dx = 2: f(x)=n(n-1)x^{n-2}$$
I don't want to use grad() to take the derivative. However, when I define the custom derivative to be the same function called with dx+1, the execution becomes way slower (even if I call the original function dx=0). I assume this is due to custom_jvp being a class and this adds some extra stuff being done when that function is called, even if we call it multiple times.
The speed is the key for my application, but I also need to define a custom derivative rule for the function for jacobian calculations involving this function. Is there a more optimized way to do that?
System info (python version, jaxlib version, accelerator, etc.)
jax:    0.4.28
jaxlib: 0.4.28
numpy:  1.26.4
python: 3.11.0 (main, Mar  1 2023, 18:26:19) [GCC 11.2.0]
jax.devices (1 total, 1 local): [CpuDevice(id=0)]
process_count: 1
platform: uname_result(system='Linux', node='Yigit', release='6.5.0-1025-oem', version='#26-Ubuntu SMP PREEMPT_DYNAMIC Tue Jun 18 12:35:22 UTC 2024', machine='x86_64')

The issue here has to do with where the jax.jit is applied. When defining fun, the jit decorator is currently inside the custom_jvp. This means that the full computation isn't being JIT compiled. To fix this issue, you can update the code as follows:
# JIT compile `fun` to remove all the overhead of `custom_jvp`
fun = jax.jit(fun)

# It is useful to warm up the cache
fun(x, n, dx).block_until_ready()
fun2(x, n, dx).block_until_ready()

%timeit fun(x, n, dx).block_until_ready()
%timeit fun2(x, n, dx).block_until_ready()

On my system I now see roughly the same performance.
Note: For somewhat subtle reasons you can't actually just use:
@jax.jit
@jax.custom_jvp
def fun(x, n, dx):
  ...

You need to apply the jit after defining the JVP function.
Hope this helps!

Thank you very much @dfm! I had also tried to put jax.jit before custom_jvp but I got the following error,
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
Cell In[2], [line 13](vscode-notebook-cell:?execution_count=2&line=13)
     [10](vscode-notebook-cell:?execution_count=2&line=10)     coef = fori_loop(0, dx, lambda i, x: x*(n-i), 1)
     [11](vscode-notebook-cell:?execution_count=2&line=11)     return coef*out
---> [13](vscode-notebook-cell:?execution_count=2&line=13) @fun.defjvp
     [14](vscode-notebook-cell:?execution_count=2&line=14) def _fun_jvp(a, adot):
     [15](vscode-notebook-cell:?execution_count=2&line=15)     """Custom derivative rule for the function.
     [16](vscode-notebook-cell:?execution_count=2&line=16)
     [17](vscode-notebook-cell:?execution_count=2&line=17)     This is just the same function called with dx+1.
     [18](vscode-notebook-cell:?execution_count=2&line=18)     """
     [19](vscode-notebook-cell:?execution_count=2&line=19)     (x, n, dx) = a

AttributeError: 'jaxlib.xla_extension.PjitFunction' object has no attribute 'defjvp'

I can apply jax.jit in my project probably as you suggest. But it would be perfect to be able to change the order and add jit as decorator instead of jitting manually.

Great! I'd say that supporting the other order of decorators is pretty low priority since custom_jvp functions typically don't live at the top level of a program. In other words, normally you call custom_jvp functions deep within some larger function. You'll typically get the most performance improvement by jitting at the outermost scope. Therefore, I don't think we're likely to add support for calling defjvp on a jit function. For your use case, I don't think it adds too much overhead to add that one line!

I'm going to close this now because I think we solved the main issue. As I mentioned, I think the feature request is unlikely to be executed, but please feel free to open a new feature request with more details if it becomes a blocker.

@dfm  My actual function uses static_argnums with @functools.partial(jit, static_argnums=3). For some reason, that caused a problem with jiting the function by
fun = jax.jit(fun, static_argnums=3)

Instead I had to,
fun = jax.jit(fun.fun, static_argnums=3)

Is there something I am missing?

What was the issue you were seeing? I believe that jax.jit(fun, static_argnums=3) should work fine, and jax.jit(fun.fun, static_argnums=3) definitely isn't what you want because then you'll lose the custom_jvp!
Can you post a minimal reproducer and the specific error you're seeing?

Let's say I added a redundant if statement, and now I need to specify static_argnums (my actual code is a bit more complex, but have similar problem).
import jax
import jax.numpy as jnp
from jax.lax import fori_loop
import functools

@jax.custom_jvp
@functools.partial(jax.jit, static_argnums=2)
def fun(x, n, dx):
    """The dx th derivative of the function x^n."""
    if dx == 0:
        return x**n
    out = x**(n-dx)
    coef = fori_loop(0, dx, lambda i, x: x*(n-i), 1)
    return coef*out

@fun.defjvp
def _fun_jvp(a, adot):
    """Custom derivative rule for the function.

    This is just the same function called with dx+1.
    """
    (x, n, dx) = a
    (xdot, ndot, dxdot) = adot
    f = fun(x, n, dx)
    df = fun(x, n, dx+1)
    return f, df

@functools.partial(jax.jit, static_argnums=2)
def fun2(x, n, dx):
    """Same function without custom_jvp decorator."""
    if dx == 0:
        return x**n
    out = x**(n-dx)
    coef = fori_loop(0, dx, lambda i, x: x*(n-i), 1)
    return coef*out

x = jnp.arange(1000)
n = 10
dx = 2

fun = jax.jit(fun, static_argnums=2)

# assert fun(x, n, dx).all() == fun2(x, n, dx).all()

%timeit fun(x, n, dx).block_until_ready()
%timeit fun2(x, n, dx).block_until_ready()

The error message now is
[... skipping hidden 28 frame]

Cell In[8], [line 10](vscode-notebook-cell:?execution_count=8&line=10)
      [6](vscode-notebook-cell:?execution_count=8&line=6) @jax.custom_jvp
      [7](vscode-notebook-cell:?execution_count=8&line=7) @functools.partial(jax.jit, static_argnums=2)
      [8](vscode-notebook-cell:?execution_count=8&line=8) def fun(x, n, dx):
      [9](vscode-notebook-cell:?execution_count=8&line=9)     """The dx th derivative of the function x^n."""
---> [10](vscode-notebook-cell:?execution_count=8&line=10)     if dx == 0:
     [11](vscode-notebook-cell:?execution_count=8&line=11)         return x**n
     [12](vscode-notebook-cell:?execution_count=8&line=12)     out = x**(n-dx)

    [... skipping hidden 1 frame]

File ~/miniconda3/envs/desc-env-11/lib/python3.11/site-packages/jax/_src/core.py:1475, in concretization_function_error.<locals>.error(self, arg)
   [1474](https://file+.vscode-resource.vscode-cdn.net/home/yigit/Codes/DESC/DEBUG/~/miniconda3/envs/desc-env-11/lib/python3.11/site-packages/jax/_src/core.py:1474) def error(self, arg):
-> [1475](https://file+.vscode-resource.vscode-cdn.net/home/yigit/Codes/DESC/DEBUG/~/miniconda3/envs/desc-env-11/lib/python3.11/site-packages/jax/_src/core.py:1475)   raise TracerBoolConversionError(arg)

TracerBoolConversionError: Attempted boolean conversion of traced array with shape bool[]..
The error occurred while tracing the function fun at /tmp/ipykernel_22677/578150583.py:6 for jit. This value became a tracer due to JAX operations on these lines:

  operation a:bool[] = eq b c
    from line /tmp/ipykernel_22677/578150583.py:10:7 (fun)

And, yes, I realized that I was losing custom_jvp right after I sent the comment :)

Ah so in this case the JIT isn't the problem. You need to label that parameter also as non-differentiable:
@functools.partial(jax.custom_jvp, nondiff_argnums=(2,))
def fun(x, n, dx):
  ...

You could keep the inner jit, but I don't think it adds any value.

Oh thank you very much! It works now!
For practicality, I still want to make a decorator that jits and custom_jvps the function. Here is my version,
import jax
import jax.numpy as jnp
from jax.lax import fori_loop
import functools

def custom_jvp_with_jit(func):
    @functools.partial(jax.custom_jvp, nondiff_argnums=(2,))
    def dummy(x, n, dx):
        return func(x, n, dx)

    @dummy.defjvp
    def _dummy_jvp(a, adot):
        """Custom derivative rule for the function.

        This is just the same function called with dx+1.
        """
        (x, n, dx) = a
        (xdot, ndot, dxdot) = adot
        f = dummy(x, n, dx)
        df = dummy(x, n, dx+1)
        return f, df

    return jax.jit(dummy, static_argnums=2)

@custom_jvp_with_jit
def fun(x, n, dx):
    """The dx th derivative of the function x^n."""
    if dx == 0:
        return x**n
    out = x**(n-dx)
    coef = fori_loop(0, dx, lambda i, x: x*(n-i), 1)
    return coef*out

I hope it doesn't have any more problems!!!


Add cni plugins

CNI - the Container Network Interface consists of a specification and
libraries for writing plugins to configure network interfaces in Linux
containers
aos-firewall plugin handles access to containers own by different service providers
dnsname plugin - provides DNS services and service discovery for local containers
@al1img @oleksiimoisieiev

Added in meta-aos

Added in meta-aos


add an --override-track-link option to help guiding spotdl to the right songs.

Requested Feature
To help with the mess of wrong music downloaded or music not found i propose something like this:
spotdl download https://open.spotify.com/playlist/XXXX --override-track-link https://open.spotify.com/track/XXXXXXX=https://www.youtube.com/watch?v=j-DSP2hhJoA https://open.spotify.com/track/YYYYYYY=https://www.youtube.com/watch?v=j-DSP2hhJoA
If we could specify that a certain "run" of spotdl have the forced track/ytlink association, it would help a lot squashing some of the misses of spotdl
an alternative would be to specify a text file containing the list of associations and it would make it easier to share and do a community repository of matches and have everyone pitching in to share their own findings, this could be very successfull.
spotdl download https://open.spotify.com/playlist/XXXX --override-track-link "matches.txt"
Possible implementation
No response

Hey, you should be able to do something like this:
spotdl download <spotify_album_url> <youtube_song_url>|<spotify_song_url>
This should associate the Youtube URL for the respective song in that album.

nope
spotdl download https://open.spotify.com/playlist/4BlW4EMWVbyZDHEAIGwbHZ https://www.youtube.com/watch?v=B2UbjM_e0Eg|https://open.spotify.com/track/3YXGDvOfkA9cdatTY21mro
https://open.spotify.com/track/3YXGDvOfkA9cdatTY21mro : The term
'https://open.spotify.com/track/3YXGDvOfkA9cdatTY21mro' is not recognized as the name of a cmdlet, function, script
file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct
and try again.
At line:1 char:118

... h?v=B2UbjM_e0Eg|https://open.spotify.com/track/3YXGDvOfkA9cdatTY21mro

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

CategoryInfo          : ObjectNotFound: (https://open.sp...fkA9cdatTY21mro:String) [], CommandNotFoundException
FullyQualifiedErrorId : CommandNotFoundException

Apologies, please try putting the arguments in quotes as so:
spotdl download "<spotify_album_url>" "<youtube_song_url>|<spotify_song_url>"

spotdl download https://open.spotify.com/playlist/4BlW4EMWVbyZDHEAIGwbHZ "https://www.youtube.com/watch?v=B2UbjM_e0Eg|https://open.spotify.com/track/3YXGDvOfkA9cdatTY21mro"
Processing query: https://open.spotify.com/playlist/4BlW4EMWVbyZDHEAIGwbHZ
Processing query: https://www.youtube.com/watch?v=B2UbjM_e0Eg|https://open.spotify.com/track/3YXGDvOfkA9cdatTY21mro
Found 1 songs in spotdlmessup (Playlist)
Downloaded "Disco Curtis - Just Dance": https://www.youtube.com/watch?v=B2UbjM_e0Eg
Downloaded "Disco Curtis - Just Dance": https://www.youtube.com/watch?v=sA5vJXueVYc
it is downloading 2 files and, in the folder, only 1 is left and it's the wrong one.

says "album", not playlist.
also, try spotdl "<youtube_song_url>|<spotify_song_url>"

says "album", not playlist. also, try spotdl "<youtube_song_url>|<spotify_song_url>"

This does not really answer the first issue of spot dl not finding the right song on complex querry

This does not really answer the first issue of spot dl not finding the right song on complex querry

Matching correct songs is a very complex task, not all songs can be matched, but we try our best


Cannot scroll smoothly on a page with a lot images (Android 9.0 only, fine for 8.x, 7.x)

Environment
Run react-native info in your terminal and paste its contents here.
React Native Environment Info:
System:
OS: macOS 10.14.2
CPU: (8) x64 Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz
Memory: 223.26 MB / 16.00 GB
Shell: 4.4.23 - /usr/local/bin/bash
Binaries:
Node: 11.5.0 - /usr/local/bin/node
Yarn: 1.12.3 - /usr/local/bin/yarn
npm: 6.4.1 - ~/.npm-packages/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
SDKs:
iOS SDK:
Platforms: iOS 12.1, macOS 10.14, tvOS 12.1, watchOS 5.1
Android SDK:
API Levels: 27, 28
Build Tools: 27.0.3, 28.0.3
System Images: android-24 | Google Play Intel x86 Atom, android-28 | Google Play Intel x86 Atom
IDEs:
Android Studio: 3.2 AI-181.55<IP_ADDRESS>56338
Xcode: 10.1/10B61 - /usr/bin/xcodebuild
npmPackages:
react: 16.6.3 => 16.6.3
react-native: 0.57.8 => 0.57.8
npmGlobalPackages:
create-react-native-app: 1.0.0
react-native-cli: 2.0.1
Description
Describe your issue in detail. Include screenshots if needed. If this is a regression, let us know.
A simple page that has a ScrollView with 100 Image in it cannot scroll smoothly on emulator or device with Android 9.0 . It can scroll smoothly on Android 8.x or 7.x
Reproducible Demo
Reproduce project
https://github.com/gsunsnackv/android-9.0-react-native-scroll-bug/tree/master
You should also be able to reproduce using the following simple steps:

react-native init AwesomeProject
Edit App.js .
Change View to ScrollView
Add 100 different images under the ScrollView for example https://github.com/gsunsnackv/android-9.0-react-native-scroll-bug/blob/master/App.js
Open an Android emulator with Android 9.0 (Pie) installed
react-native run-android

=== New information 2019-01-09 ===
FlatList does not work either. Here is the same project above changing ScrollView to FlatList
https://github.com/gsunsnackv/android-9.0-react-native-scroll-bug/tree/flatlist

Is there any workaround for this issue?

@alexandrius I do not have any work around. Are you experiencing the same issue? Can you click on the thumb up to upvote this issue?

@gsunsnackv Yes fling stops working if it looses focus (navigating to another page and back)

is there any help?

Yeah pain is real on this one, going to give https://github.com/Flipkart/recyclerlistview a try later tonight and report back in the morning.

Still reproducible with 0.59.1

I start working in an app with 100 images per page (FlatList and Slider) in Android 8. All was working very well, i was impressed with RN :) .But everything changes when I updated mi Xiaomi to Android 9.
My app currently show lag, in the emulator is worst.
Still reproducible with 0.59.1
Help, please.

Not a solution but a workaround that we have used: reduce the FlatList's windowSize on Android 9 to something small like 3.
It seems like this jank is caused by literally the total number of image pixels that RN is rendering. If you reduce the dimensions of your images, the problem goes away until you add more images.

 To a point that I'm willing to pay to get it fixed. If you are in the same situation, please join force and put down some rewards.
I just added a $10 reward for this issue. The total reward now is $10.  Join me to add more reward to get this issue fixed faster. You can do it here: https://www.issuereward.com/issue/db5AZ54NR9
I suggest admin of this repo install the Issue Reward bot from https://github.com/apps/issue-reward-beta

@sunshineo Have you tried substituting React Native ScrollView implementation with NestedScrollView?

@sunshineo Here's the solution:
/**
 * Sample React Native App
 * https://github.com/facebook/react-native
 *
 * @format
 * @flow
 */

import React, { Component } from 'react';
import { StyleSheet, Image, View } from 'react-native';
import { RecyclerListView, DataProvider, LayoutProvider } from 'recyclerlistview';

const dataProvider = new DataProvider(((r1, r2) => {
    return r1 !== r2;
}));

const images = [
    "https://d301468hdcm00e.cloudfront.net/cce71941eb82ac08759e0f0cd1052eaf_video-file.png",
    "https://d301468hdcm00e.cloudfront.net/eb037f1ffa2d70c821793962ae7f3893_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/fe61fae487d9bb1abb672e390c137f0a_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/21d59ee6577782b0f9fce2254d3fa321_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/4d316b9ea2e682b2e9d5f6dbff074fe7_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/bb17d6dd014a91d67a4c11529874b25e_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/4ea7e227c477b7c40063b16fc52c4047_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/b575f7c440732c55f785059bd428a769_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/d07949ec72a3a0351c0047b4f74420d8_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/be68a2cd2fbe5ff4e5ccb741ec5cfb0f_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/655b99b40128f9b40e511cd0f84f097f_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/b57edfe042a5bb8366672ffbb0783539_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/6e65fe0fffbbfeaf700f5e067cf412dd_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/9b8edc114fd1472ef1177a19d13e6218_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/f1b9287971cc07642329bc759b380446_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/18dc3dd9e430ba1575aebaf72307978d_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/a0e3fff4956145b1a9b3f90ab4502a33_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/be3f5e12a86a7119d9aa3cef9e6e551f_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/e777dadd4ec4925084148635a8da84cd_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/ee143260ed53ccbf09eb1ddf9d07f241_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/fd8ee73a45d931ba11b5da5b192ec2bb_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/bd99df637237267580b8c9034d5f557f_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/2b4a793325ca76a72e47dcbd93697a65_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/eee1f2a2009db27c846940eb86137bb4_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/6508a56e24f9341f08dbfc4f8d22b919_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/03a02d7cfe272d807d731da00710a357_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/6a657afc87434eacc603b49de7fe5fba_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/b3edfbdf7276c3560dc3e293976986c5_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/0a7840e058b5aa96db969081284a8c05_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/761d107b61fd9fbaca4dfe11cce0d040_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/bcd109db9e652208487c8dd5df61bce0_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/26ef17691c4860096a3e5dfaf74dfd59_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/9a2775589197620fe356bdc413260eba_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/79846b9dfdd3a2d7e537b690759f3a86_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/c7acbb527984ce81145267690ed2c892_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/4cea72399d9de87ce7bbc885842bd26e_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/ff12987c6ddb0dba0b86335544e2819e_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/01dc15ddee11ddaf533b0f3b4234ab7e_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/41d223a280ee93e17204b104341e9008_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/b82bb3a8d8b80b624960cb91efa93ef3_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/4bfc2219b0d73142ca2b7157a7c6fc31_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/91dcbf268ecdca69925ecb49b8e373e6_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/7cca7994d36b31688da162fd86dc9bd5_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/2bf2e39e0c58a0b1b8a5fc2516242611_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/a7d59857fb34b56bbe13b1d5812629f0_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/27b5ecc3f96e3f2356d88071aa6c1bdd_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/620467c8d92609182361d148345c260f_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/9575cf5cf355de2e6ef2f23f02c8bae2_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/cb2eca2d89b229aff05c0ddbd866749e_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/15d3a4ddb75caa365d37938ee67b68be_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/7ec5bb3cf108c4ed7a6c4ef9011d71e2_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/872625c27acad9f54fb0143bd6a24d85_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/8b45155e982fe1dd274b2c34055b425e_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/b4ca85a41ac9437fdbb5e5e9919bc9d3_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/e67299c6d8f5a2e4236409038d067320_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/53c17bc4ef51c5a88af5b9348fbd9699_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/29c5a29d54788ce6766c79e2faf53998_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/86117df5913b17e728ae94a441163cab_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/063aace8eff8ec68ff2fa8fab1b2e350_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/b1f8e3a2d4fdf6c6e03569f56c602686_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/6b0156491539e9a72b0eccb9d80685b1_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/c162ab8b459fa9da12261e9fae5c3f80_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/985e4c4676be7c1b1d02ded514994b19_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/d2a2c462da0da55bcb26ce775ed95891_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/7333448ad4a8c98efd0e03eda924df58_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/8b7b9894fee44b15acb8917fbb48f2eb_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/820b21733ca6091b61fa0bb9d33b9e79_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/70a09ada579de824b1c81be13c0ebdb1_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/e14c4192198a99ac1ab39975f512e56c_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/6be306af38dde84d258801d630758fe8_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/240af802d4e6627ceba2eb3020ed1ec9_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/2d26f3d8b1e390d9d5682164fe2d5094_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/b1b10ea73b6113623d62531b536246da_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/daa8948da075ffffad40d7256e05c089_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/3d9f60626d358d68f95d1be19209fc45_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/83188ab064ef764c9a9a0cb643b9a3e7_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/c401c0bfedfe6a0b4515dea53eeb7d4c_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/3f94434a8ad72dba4156962132bafe44_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/d1488736aced7845f621443f9b2b8f0e_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/9da2b7a4987582ac4259db0c23876b17_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/7618ef478fa9bf25a56844a73b5f92c8_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/6c0e0db86d94fe1d8b8fc1e18c384042_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/54ba9807386dcb48fdef4af278bd6e87_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/2090c6b6aae9346d62dfbff8fd1ca15d_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/b9e54c60e0ef10dca356265f68f1a680_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/93579efc6b4f7b82edf74df370948e09_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/d7564e1a1c34ebb287096ad92ca0728e_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/efe1244f004cb89d4e8b7a897dbe96e6_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/34adbb23d057a8b76406f43a32b7781f_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/4f8745469c320ae20dc1075c4b2b35ba_video-thumbnail-file.jpeg",
    "https://d301468hdcm00e.cloudfront.net/05656ccec7c7fa2949fb860171fccee7_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/746d4d577fb965573d440210ce4dda13_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/e4786fb6bca5f3d1d01c862feb94eefa_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/aa71d06f69daddd4e9bc3ca003231caf_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/6dd015aabbecbf93ea7628a63b544b94_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/1ded32bbdd5f6f371cf32ee6ae31b399_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/27caff6c79562c5160d7f44728b370cd_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/048dd65f42d6f61f69a482f7c3c9ac6e_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/d5e870a4e713d759fd436a5dbf9db925_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/7958c8af4cf94e93ca9887bef3f775cb_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/c13ec61ef5abc3bf26cea3c8197d9709_4811a3440a1c04c60ad9c5eddc7bcf8d_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/4421bb27e3aeecf74f65f6b9269ff78d_Screen%20Shot%202018-08-29%20at%202.26.19%20PM.png",
    "https://d301468hdcm00e.cloudfront.net/40bbf507120de434fb53711998220c5c_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/2e1e0c4f7a302472cb46afb074b21e0a_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/ed25957da9549d57b924a9a792db2963_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/dd231e317bbf38aa0425f4cf9b597f64_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/f78e67058417c73c92534cab47131c1a_thumbnail.png",
    "https://d301468hdcm00e.cloudfront.net/342245b72d9a9bcc8b70e250c82b9919_thumbnail-file",
    "https://d301468hdcm00e.cloudfront.net/e37326aa90fbe10dc5e27df510a7f980_thumbnail-file"
]

export default class Temp extends Component {

    constructor(props) {
        super(props);
        this._layoutProvider = new LayoutProvider(
            () => 0,
            (_, dim) => {
                dim.height = 300;
                dim.width = 300;
            }
        );

        let provider = dataProvider.cloneWithRows(images);

        this.state = {
            dataProvider: provider
        }
    }

    render() {
        return (
            <View style={{ flex: 1 }}>
                <RecyclerListView
                    layoutProvider={this._layoutProvider}
                    dataProvider={this.state.dataProvider}
                    style={{ flex: 1 }}
                    rowRenderer={this._renderItem.bind(this)} />
            </View>
        );
    }

    _renderItem(_, item) {
        return <Image style={{ height: 300, width: 300 }} source={{ uri: item }} />
    }
}

@alexandrius Thats not a solution, but a workaround. It should just work with ScrollView, FlatList and SectionList too.

@danilobuerger Try loading 100 images with Native Android code. You will get same result.
And as I've said ScrollView, FlatList and SectionList doesn't recycle the items!
There probably was some memory optimizations done with latest Android 9. So there's good chance memory just got more constrained.
I bet you would get the same issue loaded 1000 images on Android <9.

To be 100% sure, I actually created simple Android application with the same images.
My assumptions were correct this is not React Native bug!
The code I posted above IS actual solution and not a workaround. FlatList doesn't reuse already drawn views it only unmounts them to reduce CPU overhead though views are still in memory. Loading many images in ScrollView should never be done since you don't have huge amounts of resources on phones like you have on computers.
Here's the result
https://youtu.be/XgxCzdo7H9I
Here's the source code:
package com.alexandrius.hundredimages;

import android.content.Context;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;

import com.bumptech.glide.Glide;

public class MainActivity extends AppCompatActivity {

    String[] images = {"https://d301468hdcm00e.cloudfront.net/cce71941eb82ac08759e0f0cd1052eaf_video-file.png",
            "https://d301468hdcm00e.cloudfront.net/eb037f1ffa2d70c821793962ae7f3893_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/fe61fae487d9bb1abb672e390c137f0a_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/21d59ee6577782b0f9fce2254d3fa321_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/4d316b9ea2e682b2e9d5f6dbff074fe7_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/bb17d6dd014a91d67a4c11529874b25e_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/4ea7e227c477b7c40063b16fc52c4047_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/b575f7c440732c55f785059bd428a769_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/d07949ec72a3a0351c0047b4f74420d8_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/be68a2cd2fbe5ff4e5ccb741ec5cfb0f_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/655b99b40128f9b40e511cd0f84f097f_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/b57edfe042a5bb8366672ffbb0783539_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/6e65fe0fffbbfeaf700f5e067cf412dd_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/9b8edc114fd1472ef1177a19d13e6218_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/f1b9287971cc07642329bc759b380446_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/18dc3dd9e430ba1575aebaf72307978d_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/a0e3fff4956145b1a9b3f90ab4502a33_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/be3f5e12a86a7119d9aa3cef9e6e551f_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/e777dadd4ec4925084148635a8da84cd_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/ee143260ed53ccbf09eb1ddf9d07f241_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/fd8ee73a45d931ba11b5da5b192ec2bb_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/bd99df637237267580b8c9034d5f557f_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/2b4a793325ca76a72e47dcbd93697a65_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/eee1f2a2009db27c846940eb86137bb4_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/6508a56e24f9341f08dbfc4f8d22b919_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/03a02d7cfe272d807d731da00710a357_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/6a657afc87434eacc603b49de7fe5fba_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/b3edfbdf7276c3560dc3e293976986c5_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/0a7840e058b5aa96db969081284a8c05_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/761d107b61fd9fbaca4dfe11cce0d040_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/bcd109db9e652208487c8dd5df61bce0_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/26ef17691c4860096a3e5dfaf74dfd59_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/9a2775589197620fe356bdc413260eba_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/79846b9dfdd3a2d7e537b690759f3a86_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/c7acbb527984ce81145267690ed2c892_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/4cea72399d9de87ce7bbc885842bd26e_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/ff12987c6ddb0dba0b86335544e2819e_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/01dc15ddee11ddaf533b0f3b4234ab7e_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/41d223a280ee93e17204b104341e9008_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/b82bb3a8d8b80b624960cb91efa93ef3_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/4bfc2219b0d73142ca2b7157a7c6fc31_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/91dcbf268ecdca69925ecb49b8e373e6_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/7cca7994d36b31688da162fd86dc9bd5_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/2bf2e39e0c58a0b1b8a5fc2516242611_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/a7d59857fb34b56bbe13b1d5812629f0_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/27b5ecc3f96e3f2356d88071aa6c1bdd_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/620467c8d92609182361d148345c260f_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/9575cf5cf355de2e6ef2f23f02c8bae2_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/cb2eca2d89b229aff05c0ddbd866749e_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/15d3a4ddb75caa365d37938ee67b68be_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/7ec5bb3cf108c4ed7a6c4ef9011d71e2_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/872625c27acad9f54fb0143bd6a24d85_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/8b45155e982fe1dd274b2c34055b425e_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/b4ca85a41ac9437fdbb5e5e9919bc9d3_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/e67299c6d8f5a2e4236409038d067320_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/53c17bc4ef51c5a88af5b9348fbd9699_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/29c5a29d54788ce6766c79e2faf53998_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/86117df5913b17e728ae94a441163cab_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/063aace8eff8ec68ff2fa8fab1b2e350_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/b1f8e3a2d4fdf6c6e03569f56c602686_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/6b0156491539e9a72b0eccb9d80685b1_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/c162ab8b459fa9da12261e9fae5c3f80_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/985e4c4676be7c1b1d02ded514994b19_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/d2a2c462da0da55bcb26ce775ed95891_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/7333448ad4a8c98efd0e03eda924df58_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/8b7b9894fee44b15acb8917fbb48f2eb_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/820b21733ca6091b61fa0bb9d33b9e79_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/70a09ada579de824b1c81be13c0ebdb1_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/e14c4192198a99ac1ab39975f512e56c_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/6be306af38dde84d258801d630758fe8_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/240af802d4e6627ceba2eb3020ed1ec9_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/2d26f3d8b1e390d9d5682164fe2d5094_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/b1b10ea73b6113623d62531b536246da_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/daa8948da075ffffad40d7256e05c089_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/3d9f60626d358d68f95d1be19209fc45_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/83188ab064ef764c9a9a0cb643b9a3e7_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/c401c0bfedfe6a0b4515dea53eeb7d4c_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/3f94434a8ad72dba4156962132bafe44_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/d1488736aced7845f621443f9b2b8f0e_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/9da2b7a4987582ac4259db0c23876b17_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/7618ef478fa9bf25a56844a73b5f92c8_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/6c0e0db86d94fe1d8b8fc1e18c384042_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/54ba9807386dcb48fdef4af278bd6e87_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/2090c6b6aae9346d62dfbff8fd1ca15d_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/b9e54c60e0ef10dca356265f68f1a680_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/93579efc6b4f7b82edf74df370948e09_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/d7564e1a1c34ebb287096ad92ca0728e_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/efe1244f004cb89d4e8b7a897dbe96e6_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/34adbb23d057a8b76406f43a32b7781f_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/4f8745469c320ae20dc1075c4b2b35ba_video-thumbnail-file.jpeg",
            "https://d301468hdcm00e.cloudfront.net/05656ccec7c7fa2949fb860171fccee7_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/746d4d577fb965573d440210ce4dda13_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/e4786fb6bca5f3d1d01c862feb94eefa_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/aa71d06f69daddd4e9bc3ca003231caf_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/6dd015aabbecbf93ea7628a63b544b94_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/1ded32bbdd5f6f371cf32ee6ae31b399_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/27caff6c79562c5160d7f44728b370cd_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/048dd65f42d6f61f69a482f7c3c9ac6e_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/d5e870a4e713d759fd436a5dbf9db925_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/7958c8af4cf94e93ca9887bef3f775cb_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/c13ec61ef5abc3bf26cea3c8197d9709_4811a3440a1c04c60ad9c5eddc7bcf8d_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/4421bb27e3aeecf74f65f6b9269ff78d_Screen%20Shot%202018-08-29%20at%202.26.19%20PM.png",
            "https://d301468hdcm00e.cloudfront.net/40bbf507120de434fb53711998220c5c_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/2e1e0c4f7a302472cb46afb074b21e0a_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/ed25957da9549d57b924a9a792db2963_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/dd231e317bbf38aa0425f4cf9b597f64_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/f78e67058417c73c92534cab47131c1a_thumbnail.png",
            "https://d301468hdcm00e.cloudfront.net/342245b72d9a9bcc8b70e250c82b9919_thumbnail-file",
            "https://d301468hdcm00e.cloudfront.net/e37326aa90fbe10dc5e27df510a7f980_thumbnail-file"};

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        LinearLayout linearLayout = findViewById(R.id.content);
        int size = getResources().getDimensionPixelSize(R.dimen.size);

        for (String url : images) {
            LayoutInflater vi = (LayoutInflater) getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            View v = vi.inflate(R.layout.imageview, null);
            ImageView imageView = v.findViewById(R.id.imageview);
            linearLayout.addView(v, 0, new ViewGroup.LayoutParams(size, size));
            Glide.with(this).load(url).into(imageView);
        }
    }
}

@alexandrius Thank you very much for digging into this. For your Android project, is it working smoothly on < Android 9.0 ? If so, does it mean it is a regression on the Android system at OS level?

I haven't tried running it on <9 but I suppose yes. I don't think this is regression. Android dev team probably changed memory handling and gave preference not to crash app when low memory. I honestly don't know.
You should never load many images in ScrollView. OTOH FlatList support of view recycling would be great.  Anyway you need to use recyclerlistview or largelist.

Thank you @alexandrius , but recyclerlistview is much harder to use than ScrollView. You need to setup this provider, that provider, worry about size of things ...
Would you like to claim the reward I put up? https://www.issuereward.com/issue/db5AZ54NR9
Could you run your Java code on Android < 9 to confirm if it is a change on Android side?

Have you tried a smaller windowSize? We have Android specific config for our app to reduce all our windowSizes to something like 3. It works absolutely fine. It’s a workaround, but it does work.
Sent from my iPhone

On 25 Apr 2019, at 17:51, Gordon Sun<EMAIL_ADDRESS>wrote:
Thank you @alexandrius , but recyclerlistview is much harder to use than ScrollView. You need to setup this provider, that provider, worry about size of things ...
Would you like to claim the reward I put up? https://www.issuereward.com/issue/db5AZ54NR9
Could you run your Java code on Android < 9 to confirm if it is a change on Android side?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

@sunshineo No worries about reward. I had fun digging into the issue.
Yeah it's harder but it's single time setup so...
You can also try react-native-largelist it doesn't work with expo though.

Can confirm that windowSize={3} also fixes the issue.

I can confirm, that this is an internal Android problem. Running the Java code provided by @alexandrius works fine on Android < 9, but lags hard on Android 9.

@johannes-scharlach I'm not trying to advocate Android but this isn't a problem at all. You should never load many images in ScrollView neither on Android nor on iOS.
Reminds me of this xkcd https://xkcd.com/1172/

@alexandrius I wonder what was happening for Android < 9 when you load many images in ScrollView. I wonder if something were overheating

@ johannes-scharlach我不是想提倡Android，但这根本不是问题。在Android和iOS上都不应该在ScrollView中加载很多图像。
让我想起这个xkcd https://xkcd.com/1172/

In some cases, you do need to put a lot of images in the ScrollView, which belong to different modules, but are not applicable to the List.
And this page belongs to the Main page of Main Tab and does not mount,
Use the Android Profiler to find that memory is always at a high value
And I found some pages after unmounted ,memory does not decrease, so the more page click memory footprint has been increased
I hope it helps

I tried using the Android Profiler, but it unfortunately crashes the app every time.
Since Android < 9 did work there has to be done something wrong with Android 9. I am trying to show a Image Gallery you can swipe through, so there is not much room for not loading many images in a ScrollView.

The same thing also happens in a virtualized FlatList and this shouldn't happen at all.

If it helps, I encountered the same problem with Flatlist and when setting removeClippedSubviews to true the scrolling becomes smooth.

@smeekmeister thanks! we tried this in our app and helped on Android 9.

I tried it on Android 9 with v0.57.10 of react-native, and it works, the FlatList could scroll normally but seems slower when pagingEnabled is set than on OS versions <9 .

still a problem

@smeekmeister  thanks! it works on Android 9.

Same issue on Android 9, react-native 0.60.5

Still, have the same issue on 0.61.2

same issue on 0.61.4

I Found resolve for the same problem after 7 hr just  using  didn't wrap flat list With scrollView
that work fine for android 9

this work for me  thank you , you saved my day

If it helps, I encountered the same problem with Flatlist and when setting removeClippedSubviews to true the scrolling becomes smooth.

Same issue, - -.
My app also depends on react-navigation. The app become slow when I open two or more stack pages that has its own FlatList or ScrollView of image items(maybe 10 - 15).

So what can i do... My app use react-navigation, it can open multiple pages and every page has the image item list.

Maybe react-native-screens is a solution with react-navigation and big list(with removeClippedSubviews prop).

If it helps, I encountered the same problem with Flatlist and when setting removeClippedSubviews to true the scrolling becomes smooth.

Worked for me!

Having many images into scrollview really causes to lag.

Open an Android emulator with Android 9.0 (Pie) installed

Somebody tested on a real device?

Not an issue. To be closed.

I use FastImage to fix this problem. but i need more solution better

Did anyone manage to fix this issue? I face this issue too on Android 10 AOSP ROM. (react-native version 0.63.4)
Just like #22925 mentions page loses momentum once the screen loses focus.
Both removeClippedSubviews prop and react-native-screens didn't work for me.

Did anyone manage to fix this issue? I face this issue too on Android 10 AOSP ROM. (react-native version 0.63.4)
Just like #22925 mentions page loses momentum once the screen loses focus.
Both removeClippedSubviews prop and react-native-screens didn't work for me.

Same problem I fixed by adding  resizeMethod={"resize"} props to image

这是来自QQ邮箱的假期自动回复邮件。

您好，我最近正在休假中，无法亲自回复您的邮件。我将在假期结束后，尽快给您回复。


false FormatStringAnnotation errors after one unrelated legit error

Description of the problem / feature request:
We have encountered a problem a couple of different times: After getting a legit error, such as UnusedVariable, a flood of non related errors are emitted, but they are all false positives. After fixing the first one, they go away. Note that they are in other files, and usually the compilation stops after the first file in error, so that is weird in this case.
The false errors all seem to be (those variables ARE effectively final) :
error: [FormatStringAnnotation] All variables passed as @FormatString must be final or effectively final [ERROR]     (see https://errorprone.info/bugpattern/FormatStringAnnotation)
Looking at the code generating this error, seems like the flags are not set correctly for some reason:

Feature requests: what underlying problem are you trying to solve with this feature?
Those false errors are quite startling, so ideally they should no longer appear.
Bugs: what's the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.
I really don't know what a minimal thing to reproduce it would be.
What version of Error Prone are you using?
2.4.0
Have you found anything relevant by searching the web?
No.

Don't have a reproduction case either, but I think I've also seen this odd bug once or twice. (OpenJDK 11; not sure about the exact patch release for which I last saw this.)

I really don't know what a minimal thing to reproduce it would be.

A small, self-contained example that demonstrated the probably would be helpful, i.e. a complete .java file and a command line Error Prone invocation that demonstrates the behaviour you're seeing.

I really don't know what a minimal thing to reproduce it would be.

A small, self-contained example that demonstrated the probably would be helpful, i.e. a complete .java file and a command line Error Prone invocation that demonstrates the behaviour you're seeing.

I really don't know what a minimal thing to reproduce it would be.

A small, self-contained example that demonstrated the probably would be helpful, i.e. a complete .java file and a command line Error Prone invocation that demonstrates the behaviour you're seeing.

The problem is it seems intermittent, and the spurious errors were in files other than the file the legit error occurred in, so I have no way of knowing what self-contained example, if any, could demonstrate it.

I really don't know what a minimal thing to reproduce it would be.

A small, self-contained example that demonstrated the probably would be helpful, i.e. a complete .java file and a command line Error Prone invocation that demonstrates the behaviour you're seeing.

The problem is it seems intermittent, and the spurious errors were in files other than the file the legit error occurred in, so I have no way of knowing what self-contained example, if any, could demonstrate it.

Are you using a particular build system? Is it configured to pass -XDcompilePolicy=simple?
I agree it sounds like a hard thing to minimize, but it's hard for us to help without a repro.

Are you using a particular build system? Is it configured to pass -XDcompilePolicy=simple?
I agree it sounds like a hard thing to minimize, but it's hard for us to help without a repro.

Are you using a particular build system? Is it configured to pass -XDcompilePolicy=simple?
I agree it sounds like a hard thing to minimize, but it's hard for us to help without a repro.

We use Maven and yes XDcompilePolicy is set to simple.
I understand the problem of fixing it without reproduction steps!
Only thing I can possibly suggest without reproduction steps, is to look at the flags code - something seems to cause an instance of a formatStringSymbol to have bad flags (an effectively final variable where Flags.EFFECTIVELY_FINAL is 0.)
But yeah, sorry I can't provide any more information at this point.

Are you using a particular build system? Is it configured to pass -XDcompilePolicy=simple?
I agree it sounds like a hard thing to minimize, but it's hard for us to help without a repro.

We use Maven and yes XDcompilePolicy is set to simple.
I understand the problem of fixing it without reproduction steps!
Only thing I can possibly suggest without reproduction steps, is to look at the flags code - something seems to cause an instance of a formatStringSymbol to have bad flags (an effectively final variable where Flags.EFFECTIVELY_FINAL is 0.)
But yeah, sorry I can't provide any more information at this point.

Our build is also Maven with -XDcompilePolicy=simple. (But I'm not sure I saw this issue since the comment from a few months ago.)

Our build is also Maven with -XDcompilePolicy=simple. (But I'm not sure I saw this issue since the comment from a few months ago.)

Are you using any other annotation processors in the build?
The way Symbol#flags is being used here looks correct, I don't have any theories about how that state could be corrupted.

Are you using any other annotation processors in the build?
The way Symbol#flags is being used here looks correct, I don't have any theories about how that state could be corrupted.

From mvn help:effective-pom (com.github.PicnicSupermarket.error-prone:error_prone_core:v2.4.0-picnic-3 is a Jitpack build based off this tag):
<annotationProcessorPaths>
  <path>
    <groupId>com.google.auto.service</groupId>
    <artifactId>auto-service</artifactId>
    <version>1.0-rc7</version>
  </path>
  <path>
    <groupId>org.immutables</groupId>
    <artifactId>value-processor</artifactId>
    <version>2.8.8</version>
  </path>
  <path>
    <groupId>org.hibernate.validator</groupId>
    <artifactId>hibernate-validator-annotation-processor</artifactId>
    <version>6.1.7.Final</version>
  </path>
  <path>
    <groupId>com.github.PicnicSupermarket.error-prone</groupId>
    <artifactId>error_prone_core</artifactId>
    <version>v2.4.0-picnic-3</version>
  </path>
  <path>
    <groupId>org.mockito</groupId>
    <artifactId>mockito-errorprone</artifactId>
    <version>3.6.28</version>
  </path>
</annotationProcessorPaths>

Last time I saw the issue the versions might have been lower, but this set of dependencies and their ordering has been stable for a while.

From mvn help:effective-pom (com.github.PicnicSupermarket.error-prone:error_prone_core:v2.4.0-picnic-3 is a Jitpack build based off this tag):
<annotationProcessorPaths>
  <path>
    <groupId>com.google.auto.service</groupId>
    <artifactId>auto-service</artifactId>
    <version>1.0-rc7</version>
  </path>
  <path>
    <groupId>org.immutables</groupId>
    <artifactId>value-processor</artifactId>
    <version>2.8.8</version>
  </path>
  <path>
    <groupId>org.hibernate.validator</groupId>
    <artifactId>hibernate-validator-annotation-processor</artifactId>
    <version>6.1.7.Final</version>
  </path>
  <path>
    <groupId>com.github.PicnicSupermarket.error-prone</groupId>
    <artifactId>error_prone_core</artifactId>
    <version>v2.4.0-picnic-3</version>
  </path>
  <path>
    <groupId>org.mockito</groupId>
    <artifactId>mockito-errorprone</artifactId>
    <version>3.6.28</version>
  </path>
</annotationProcessorPaths>

Last time I saw the issue the versions might have been lower, but this set of dependencies and their ordering has been stable for a while.

Are you using any other annotation processors in the build?
The way Symbol#flags is being used here looks correct, I don't have any theories about how that state could be corrupted.

We're using only Error Prone annotation processor.

Are you using any other annotation processors in the build?
The way Symbol#flags is being used here looks correct, I don't have any theories about how that state could be corrupted.

We're using only Error Prone annotation processor.


Global

English:
Stop Viewing
Current Translation:
表示を中止
Suggested Translation:
表示を停止

Hello contributor,
Thank you for your contribution! We are processing your suggestions and we will update you shortly.
Kind regards,
Microsoft Worldwide Learning Team

Now, the locfile shown :


If a robot is removed from the config files in YarpRobotLoggerDevice the installation fails

I compiled bipedal-locomotion-framework and in particular YarpRobotLoggerDevice including iCubGazeboV3 among the available robots.
Then, I switched to another branch that was not containing the config files for this robot. I run make uninstall and then make install but I got this error:
CMake Error at devices/YarpRobotLoggerDevice/app/cmake_install.cmake:45 (file):
file INSTALL cannot find
"/home/isorrentino/dev/robotology-superbuild/src/bipedal-locomotion-framework/devices/YarpRobotLoggerDevice/app/robots/iCubGazeboV3":
No such file or directory.
Call Stack (most recent call first):
devices/YarpRobotLoggerDevice/cmake_install.cmake:70 (include)
devices/cmake_install.cmake:47 (include)
cmake_install.cmake:59 (include)

Maybe there is a problem with make uninstall.
cc @GiulioRomualdi @traversaro

Did you run cmake after you switched branch? Those part of CMake uses GLOB (not sure where), and if you use that command you also need to run cmake whenever the files on disk change.

Running cmake the error disappeared. Thanks a lot @traversaro. Closing.


Fix examples for saved tracks

This PR fixes #622 by fixing the indentation of the last three lines and fixing the way user input is handled.
There are similar errors in contains_a_saved_track.py. This PR fixes those as well.

Thanks for this.
Don't worry about updating the changelog, no need for examples
Merging!


promote four toc sections in learn C# section

cc:/ @mairaw @BillWagner

I already have a PR for that: #507, except it does not change the order.

@svick I'll close this PR.  Do you want to move them up in your PR?

@tdykstra Done.


Ctrl-C should break running app

Right now, ctrl-C will close nu altogether, rather than breaking the running app. Would be nice to just break the app and get back to the nu shell

Any pointers on how this should be implemented? I can't find a way to hook into subprocess to catch the signal. Should we be catching the signal another way (this could work)? This might be over my head with my level of Rust knowledge for now, but if you can point me in the right way easily I can have a go :)

Unsure. We might have to catch the signal in nu. If subprocess doesn't handle it natively, perhaps something like this would work? https://docs.rs/ctrlc/3.1.3/ctrlc/


Add Clamp Roughness test scene

Hi,
I wasn't sure where to put the scene, so I put it into /bsdf/clamp roughness/ folder.
Also it looks too big to me, hdri image can be reduced in size.

Superseded by #2055.


Move ActionView dependencies to separate, custom-core-component

What is the current behaviour?
Right now, matestack::ui core classes inherit from/include Rails ActionView::Helpers. This could cause trouble in the future.
What is the expected behaviour?
Remove all ActionView modules from matestack/ui/core app and component and create a new static and dynamic core component which inherit from the original core components and include the ActionView modules.

Closed via #284


Missing Assets and Chapter 3

Hello, the assets needed for chapter 2 are missing from the branch related to that chapter also there isn't a branch for chapter 3, would be of great help if you update the branch of chapter 2 with the respective missing assets.

Hi, there is no assets for chapter 2. In Chapter 2 we simply animate a rectangle that we draw on screen, so no images or other assets are needed for this


Selecting GPU, zombie process?

I never had a multiple GPU's in one system but I'm trying to force waifu2x to specific GPU's and spawn threads on both of them to load balance between them. When i use the -gpu option and select 1 or 2 it does appear to load the process correctly on one GPU but leave a sort of zombie process on the other GPU. See screenshot:
https://prntscr.com/ouvwbf
If repeated they stack processes:
http://prntscr.com/ouw3r2

Does it happen when you run waifu2x.lua/web.lua on the command line then CTRL+C?
waifu2x.lua/web.lua does not use multiprocessing. So I think zombie process is your process management code issue.

I run "th waifu2x.lua -m noise_scale -noise_level 1 -force_cudnn 1 -i test.png -o test_up.png -gpu 2" from command line. I also tried running th waifu2x.lua without any other arguments and it still spawns the two processes on each GPU. nvidia-smi shows the same PID as seen on the screenshots i send.

The first screenshot is normal. CUDA will try to initialize all detected GPUs.
If you really want to use only one GPU, specify CUDA_VISIBLE_DEVICES environment variable. and when you specify CUDA_VISIBLE_DEVICES, always use -gpu 1 option.
example:
CUDA_VISIBLE_DEVICES=0 th waifu2x.lua -gpu 1 # use GPU 0
CUDA_VISIBLE_DEVICES=1 th waifu2x.lua -gpu 1 # use GPU 1

Note that CUDA_VISIBLE_DEVICES is 0 origin(start from 0), -gpu option is 1 origin.


Adjust boost related files to enable cross compiling

Specifically boost-uuid and its dependencies. This enabled cross compilation for iOS and Android

@sgr-ms, thanks for the PR, it seems that supports cross compilling currently, we're closing this for now, feel free to reopen this PR if I'm wrong here.


Unable to compile tests

after running:
nix-shell release.nix -A grpc-haskell.env
[nix-shell]$ stack build --fast && stack test --fast

I got the output:
/nix/store/p6wcdqa2ks82xq7d4d5019drrjxlqrdj-binutils-2.27/bin/ld generated: undefined reference to `gpr_free'
/nix/store/p6wcdqa2ks82xq7d4d5019drrjxlqrdj-binutils-2.27/bin/ld generated: undefined reference to `gpr_inf_future'
/nix/store/p6wcdqa2ks82xq7d4d5019drrjxlqrdj-binutils-2.27/bin/ld generated: undefined reference to `gpr_convert_clock_type'
/nix/store/p6wcdqa2ks82xq7d4d5019drrjxlqrdj-binutils-2.27/bin/ld generated: undefined reference to `gpr_time_from_micros'
/nix/store/p6wcdqa2ks82xq7d4d5019drrjxlqrdj-binutils-2.27/bin/ld generated: undefined reference to `gpr_now'
/nix/store/p6wcdqa2ks82xq7d4d5019drrjxlqrdj-binutils-2.27/bin/ld generated: undefined reference to `gpr_time_add'
/nix/store/p6wcdqa2ks82xq7d4d5019drrjxlqrdj-binutils-2.27/bin/ld generated: undefined reference to `gpr_time_from_millis'
/nix/store/p6wcdqa2ks82xq7d4d5019drrjxlqrdj-binutils-2.27/bin/ld generated: undefined reference to `gpr_time_to_millis'
collect2: error: ld returned 1 exit status
`gcc' failed in phase `Linker'. (Exit code: 1)
Progress: 1/2
--  While building custom Setup.hs for package grpc-haskell-<IP_ADDRESS> using:
      /home/isheff/.stack/setup-exe-cache/x86_64-linux/Cabal-simple_mPHDZzAJ_<IP_ADDRESS>_ghc-8.0.2 --builddir=.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS> build lib:grpc-haskell test:tests --ghc-options " -ddump-hi -ddump-to-file"
    Process exited with code: ExitFailure 1

I got a similar error by installing grpc 1.2 outside of nix entirely and running:
stack build --flag grpc-haskell:with-examples

Am I doing something wrong? I don't understand where these gpr references are coming from.
(for what it's worth, this was using commit 19125b42beaf9bfd053e489055c5a7c2edd78552 .)

I'm not able to reproduce on a NixOS Linux machine, unfortunately.
What version of stack are you using? Have you tried stack build --system-ghc from inside the nix-shell?
As a workaround in the short term, see if cabal inside the nix-shell works for you (this is the method in most recent use).
I'll leave this open until I have a chance to try stack in a couple of additional environments and update the documentation as needed.

@isheff Forgot to mention that all of the gpr references come from the grpc C library itself. If you're inclined to post your entire build log with verbosity cranked up a bit I might be able to help you ascertain what's going on.
If you're still seeing the same errors outside of the Nix tooling entirely, that might be worth digging into a little bit as well to see where the build is going wrong. You wouldn't be able to run the tests outside of nix-shell without some additional environment setup (python virtualenv for some of the tests, etc.), but building it should work as long as the grpc library is installed correctly and is the right version.

I've been attempting to re-create the error on a fresh Ubuntu (the OS I've been using) VM, but I am getting different compilation errors, where the only messages seem to be about tabs:

[nix-shell:~/gRPC-haskell]$ stack test --fast
alex-3.2.1: configure
Did not find .cabal file for distributive-0.5.2 with Git SHA of dea2b2038588853219d7fb49dc97da85a7a26e17
Right Nothing
distributive-0.5.2: configure
happy-1.19.5: configure
network-<IP_ADDRESS>: configure
parsers-0.12.5: configure
system-filepath-<IP_ADDRESS>: configure
Progress: 5/27
--  While building package system-filepath-<IP_ADDRESS> using:
      /run/user/1000/stack21394/system-filepath-<IP_ADDRESS>/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/setup --builddir=.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS> configure --with-ghc=/home/user/.stack/programs/x86_64-linux/ghc-8.0.2/bin/ghc --with-ghc-pkg=/home/user/.stack/programs/x86_64-linux/ghc-8.0.2/bin/ghc-pkg --user --package-db=clear --package-db=global --package-db=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/pkgdb --libdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/lib --bindir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/bin --datadir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/share --libexecdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/libexec --sysconfdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/etc --docdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/system-filepath-<IP_ADDRESS> --htmldir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/system-filepath-<IP_ADDRESS> --haddockdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/system-filepath-<IP_ADDRESS> --dependency=base=base-<IP_ADDRESS> --dependency=bytestring=bytestring-<IP_ADDRESS> --dependency=deepseq=deepseq-<IP_ADDRESS> --dependency=text=text-<IP_ADDRESS>-Ji7hMs2U4BkBwavd4taEVR
    Process exited with code: ExitFailure (-11)
    Logs have been written to: /home/user/gRPC-haskell/.stack-work/logs/system-filepath-<IP_ADDRESS>.log

    [1 of 1] Compiling Main             ( /run/user/1000/stack21394/system-filepath-<IP_ADDRESS>/Setup.hs, /run/user/1000/stack21394/system-filepath-<IP_ADDRESS>/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/Main.o )

    /run/user/1000/stack21394/system-filepath-<IP_ADDRESS>/Setup.hs:7:1: warning: [-Wtabs]
        Tab character found here, and in 9 further locations.
        Please use spaces instead.
    Linking /run/user/1000/stack21394/system-filepath-<IP_ADDRESS>/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/setup ...

--  While building package parsers-0.12.5 using:
      /run/user/1000/stack21394/parsers-0.12.5/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/setup --builddir=.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS> configure --with-ghc=/home/user/.stack/programs/x86_64-linux/ghc-8.0.2/bin/ghc --with-ghc-pkg=/home/user/.stack/programs/x86_64-linux/ghc-8.0.2/bin/ghc-pkg --user --package-db=clear --package-db=global --package-db=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/pkgdb --libdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/lib --bindir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/bin --datadir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/share --libexecdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/libexec --sysconfdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/etc --docdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/parsers-0.12.5 --htmldir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/parsers-0.12.5 --haddockdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/parsers-0.12.5 --dependency=attoparsec=attoparsec-<IP_ADDRESS>-IEEYoTzFh3JE4HjRWbqraH --dependency=base=base-<IP_ADDRESS> --dependency=base-orphans=base-orphans-0.5.4-ABoxiBf7nXc7Qqh66CgYc9 --dependency=charset=charset-<IP_ADDRESS>-H9haoEy2p9aEa0jGJLQFfC --dependency=containers=containers-<IP_ADDRESS> --dependency=mtl=mtl-2.2.1-BLKBelFsPB3BoFeSWSOYj6 --dependency=parsec=parsec-3.1.11-113irVHGgd88sRnywByDNw --dependency=scientific=scientific-<IP_ADDRESS>-ExDzxC7QmbS5TvW39AAm4A --dependency=text=text-<IP_ADDRESS>-Ji7hMs2U4BkBwavd4taEVR --dependency=transformers=transformers-<IP_ADDRESS> --dependency=unordered-containers=unordered-containers-<IP_ADDRESS>-6txQagwbKwSESVNJVBgwqv
    Process exited with code: ExitFailure (-11)
    Logs have been written to: /home/user/gRPC-haskell/.stack-work/logs/parsers-0.12.5.log

    [1 of 2] Compiling Warning          ( Warning.hs, /run/user/1000/stack21394/parsers-0.12.5/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/Warning.o )
    [2 of 2] Compiling Main       ser/1000/stack21394/parsers-0.12.5/Setup.lhs, /run/user/1000/stack21394/parsers-0.12.5/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/Main.o )

    /run/user/1000/stack21394/parsers-0.12.5/Setup.lhs:24:1: warning: [-Wdeprecations]
        Module ‘Warning’:
          You are configuring this package without cabal-doctest installed.
          The doctests test-suite will not work as a result.
          To fix this, install cabal-doctest before configuring.
    Linking /run/user/1000/stack21394/parsers-0.12.5/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/setup ...

--  While building package network-<IP_ADDRESS> using:
      /run/user/1000/stack21394/network-<IP_ADDRESS>/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/setup --builddir=.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS> configure --with-ghc=/home/user/.stack/programs/x86_64-linux/ghc-8.0.2/bin/ghc --with-ghc-pkg=/home/user/.stack/programs/x86_64-linux/ghc-8.0.2/bin/ghc-pkg --user --package-db=clear --package-db=global --package-db=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/pkgdb --libdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/lib --bindir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/bin --datadir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/share --libexecdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/libexec --sysconfdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/etc --docdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/network-<IP_ADDRESS> --htmldir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/network-<IP_ADDRESS> --haddockdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/network-<IP_ADDRESS> --dependency=base=base-<IP_ADDRESS> --dependency=bytestring=bytestring-<IP_ADDRESS> --dependency=unix=unix-<IP_ADDRESS>
    Process exited with code: ExitFailure (-11)
    Logs have been written to: /home/user/gRPC-haskell/.stack-work/logs/network-<IP_ADDRESS>.log

    [1 of 1] Compiling Main             ( /run/user/1000/stack21394/network-<IP_ADDRESS>/Setup.hs, /run/user/1000/stack21394/network-<IP_ADDRESS>/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/Main.o )
    Linking /run/user/1000/stack21394/network-<IP_ADDRESS>/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/setup ...

--  While building package happy-1.19.5 using:
      /run/user/1000/stack21394/happy-1.19.5/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/setup --builddir=.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS> configure --with-ghc=/home/user/.stack/programs/x86_64-linux/ghc-8.0.2/bin/ghc --with-ghc-pkg=/home/user/.stack/programs/x86_64-linux/ghc-8.0.2/bin/ghc-pkg --user --package-db=clear --package-db=global --package-db=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/pkgdb --libdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/lib --bindir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/bin --datadir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/share --libexecdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/libexec --sysconfdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/etc --docdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/happy-1.19.5 --htmldir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/happy-1.19.5 --haddockdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/happy-1.19.5 --dependency=array=array-<IP_ADDRESS> --dependency=base=base-<IP_ADDRESS> --dependency=containers=containers-<IP_ADDRESS> --dependency=mtl=mtl-2.2.1-BLKBelFsPB3BoFeSWSOYj6
    Process exited with code: ExitFailure (-11)
    Logs have been written to: /home/user/gRPC-haskell/.stack-work/logs/happy-1.19.5.log

    [1 of 1] Compiling Main             ( /run/user/1000/stack21394/happy-1.19.5/Setup.lhs, /run/user/1000/stack21394/happy-1.19.5/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/Main.o )

    /run/user/1000/stack21394/happy-1.19.5/Setup.lhs:20:1: warning: [-Wtabs]
        Tab character found here, and in 39 further locations.
        Please use spaces instead.
    Linking /run/user/1000/stack21394/happy-1.19.5/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/setup ...

--  While building package distributive-0.5.2 using:
      /run/user/1000/stack21394/distributive-0.5.2/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/setup --builddir=.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS> configure --with-ghc=/home/user/.stack/programs/x86_64-linux/ghc-8.0.2/bin/ghc --with-ghc-pkg=/home/user/.stack/programs/x86_64-linux/ghc-8.0.2/bin/ghc-pkg --user --package-db=clear --package-db=global --package-db=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/pkgdb --libdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/lib --bindir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/bin --datadir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/share --libexecdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/libexec --sysconfdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/etc --docdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/distributive-0.5.2 --htmldir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/distributive-0.5.2 --haddockdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/distributive-0.5.2 --dependency=base=base-<IP_ADDRESS> --dependency=base-orphans=base-orphans-0.5.4-ABoxiBf7nXc7Qqh66CgYc9 --dependency=tagged=tagged-0.8.5-1mTloBSoUxv8dqUr8XBGBt --dependency=transformers=transformers-<IP_ADDRESS> --dependency=transformers-compat=transformers-compat-<IP_ADDRESS>-IuFogs8HAVUJBWVNMhtssu
    Process exited with code: ExitFailure (-11)
    Logs have been written to: /home/user/gRPC-haskell/.stack-work/logs/distributive-0.5.2.log

    [1 of 1] Compiling Main             ( /run/user/1000/stack21394/distributive-0.5.2/Setup.lhs, /run/user/1000/stack21394/distributive-0.5.2/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/Main.o )
    Linking /run/user/1000/stack21394/distributive-0.5.2/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/setup ...

--  While building package alex-3.2.1 using:
      /run/user/1000/stack21394/alex-3.2.1/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/setup --builddir=.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS> configure --with-ghc=/home/user/.stack/programs/x86_64-linux/ghc-8.0.2/bin/ghc --with-ghc-pkg=/home/user/.stack/programs/x86_64-linux/ghc-8.0.2/bin/ghc-pkg --user --package-db=clear --package-db=global --package-db=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/pkgdb --libdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/lib --bindir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/bin --datadir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/share --libexecdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/libexec --sysconfdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/etc --docdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/alex-3.2.1 --htmldir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/alex-3.2.1 --haddockdir=/home/user/.stack/snapshots/x86_64-linux/lts-8.23/8.0.2/doc/alex-3.2.1 --dependency=QuickCheck=QuickCheck-2.9.2-Jyj4gc4JxkEIgGFLAsGhs9 --dependency=array=array-<IP_ADDRESS> --dependency=base=base-<IP_ADDRESS> --dependency=containers=containers-<IP_ADDRESS> --dependency=directory=directory-<IP_ADDRESS>
    Process exited with code: ExitFailure (-11)
    Logs have been written to: /home/user/gRPC-haskell/.stack-work/logs/alex-3.2.1.log

    [1 of 1] Compiling Main             ( /run/user/1000/stack21394/alex-3.2.1/Setup.lhs, /run/user/1000/stack21394/alex-3.2.1/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/Main.o )
    Linking /run/user/1000/stack21394/alex-3.2.1/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/setup ...
Progress: 6/27
[nix-shell:~/gRPC-haskell]$

(The system-filepath log, for instance, just has:)
[1 of 1] Compiling Main             ( /run/user/1000/stack21394/system-filepath-<IP_ADDRESS>/Setup.hs, /run/user/1000/stack21394/system-filepath-<IP_ADDRESS>/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/Main.o )

/run/user/1000/stack21394/system-filepath-<IP_ADDRESS>/Setup.hs:7:1: warning: [-Wtabs]
    Tab character found here, and in 9 further locations.
    Please use spaces instead.
Linking /run/user/1000/stack21394/system-filepath-<IP_ADDRESS>/.stack-work/dist/x86_64-linux/Cabal-<IP_ADDRESS>/setup/setup ...

I'm not sure what to do to compile this thing. I suppose I could try moving all my development to Nix, but it seems like that shouldn't be necessary...

I'm guessing the errors have something to do with your local stack/ghc environment and/or versioning issues, as I cannot replicate failures like you're seeing. Can you answer the questions I'd asked earlier? It'd be helpful to know versions of stack, cabal, nix-env, etc., that you're using.
Let's try building without stack for starters. From a fresh checkout of the master branch, try:
$ nix-shell release.nix -A grpc-haskell.env
[nix-shell:~/gRPC-haskell]$ cabal configure --enable-tests
[nix-shell:~/gRPC-haskell]$ cabal build


[Core] aaz: Fix has_value function for list, dict and object arg types.

Related command

Description

Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

Core

/azp run


What is the purpose of ~/.dotfiles: in README.md's example?

https://github.com/anishathalye/dotbot/blob/f5e019105ec5a70a71d5afa78dc44baa0e87b721/README.md#full-example
- link:
    ~/.dotfiles: ''

That's a good question, perhaps I should amend the README to explain this.
Suppose I clone my dotfiles repo in /home/anish/stuff/src/dotfiles. This will create a symlink ~/.dotfiles -> /home/anish/stuff/src/dotfiles. This is convenient for having other stuff reference contents within the dotfiles directory. For example, I have a bin/ directory in my dotfiles, where I keep shell scripts, and then I add ~/.dotfiles/bin to my $PATH.

Thank you for the explanation! With that line, ./install throws a warning if the repo is cloned to ~/.dotfiles (as also suggested in README.md) so it was confusing to me.

Thanks again for raising this issue -- I removed the confusing example from the documentation in 8f136ee73f4231034d6a5af3a7bf23dc3f28400a (it was confusing without the explanation, and I figured that it wasn't worth explaining in the readme).


Add initial self-hosting tutorial

Detail the processes needed to set up the CHT.

@nomulex  - sorry for the random and late grammar comments! I'm very excited to see these published and want to take them for a spin (on my OKRs is to learn how to set up a self hosted instance!!), so I've been watching this ticket with interest, but missed the PR 'til now.

@mrjones-plip These are great. Keep them coming.  Let me fix and revert

@nomulex  - cool cool! glad you're receptive to feedback!  I've cited one last thing (maybe?).  I'll give it one more go over here.
If you want, I'd be happy to actually test the steps tomorrow and Fri. I'm gonna do it anyway sometime. Lemme know!

Actually,  this would be great if we dog-food this. That means that we make it more error proof. This is really appreciated.

@nomulex  - game on!! I love dog-fooding.  I'll fire a VM or three tomorrow and run through and give technical feedback.  w00t!
Speaking of which...do people really deploy a production instance on MacOS and Win10? I know I'm an Ubuntu fan boy - but that sounds odd to me.  If it's just for development, we should push them to the dev setup instead instead, yeah?
Otherwise, if we have partners deploying on Win10/MacOS, then this is good document.

OK - annoying "just one more single comment" reviews are done for the (my) night - I'll pick this up tomorrow!

@nomulex tl;dr - these steps are awesome! Excellent work. I set my first "production" instance!! (may or may not be up at https://cht-test1.plip.com)

@mrjones-plip  thanks for taking the time to review all these and for testing to make sure that they work and a user is able to get a running CHT instance at the end of this journey. I can reach https://cht-test1.plip.com/. Great jobs!  I have worked on all the requests or so I think.  I would be glad if you took one last pass at this.
@newtewt  thanks as well for your valuable contributions.

All addressed

Thank you for your time.


Can't update slider within watchers

Hi there,
i created a gallery with awesome-swiper and want to combine the current slide the vue router.
  computed: {
            swiper() {
                return this.$refs.mySwiper.swiper
            }
        },

When i want to update the slide (slideTo), the following exception pops up:
Error in callback for watcher "$route.params.index": "TypeError: Cannot read property 'swiper' of undefined"
Here is the watcher code:
 '$route.params.index': function(index) {
             this.swiper.slideTo(index);
            },

I know, the awesome swiper has history navigation too, but i want to use vue router with another features here. Can i combine these two libraries?
Hope you can help.

May be the swiper was destroyed when route change...


Syntax Highlighting For PHP Broken When Using Trait Classes

VSCode Version: Code 1.14.2 (cb82febafda0c8c199b9201ad274e25d9a76874e, 2017-07-19T23:22:50.650Z)
OS Version: Darwin x64 15.6.0
Extensions:

Extension
Author (truncated)
Version

erb
Cra
0.0.1

EditorConfig
Edi
0.9.4

laravel-blade
KTa
0.0.1

ejs-language-support
Qas
0.0.1

ActiveFileInStatusBar
Ros
1.0.2

jsx
Twe
0.0.1

sort-lines
Tyr
1.3.0

scratchpad
awe
0.1.0

gotemplate
cas
0.1.1

code-wsync
mpo
0.0.1

vscode-eslint
dba
1.2.11

python
don
0.7.0

prettier-vscode
esb
0.22.1

php-debug
fel
1.11.1

docthis
joe
0.4.7

php-symbols
lin
2.1.0

Go
luk
0.6.63

prettify-json
moh
0.0.3

atom-keybindings
ms-
3.0.1

php-docblocker
nei
1.2.0

vetur
oct
0.9.3

Ruby
reb
0.13.0

vscode-icons
rob
7.12.0

stylelint
shi
0.28.0

simple-ruby-erb
vor
0.2.1

twig
wha
1.0.2

jinja
who
0.0.8

(2 theme extensions excluded)

Steps to Reproduce:

New File
Set Syntax to PHP
Insert code snippet:<?php

class MyClass
{
    use \My\TraitClass;

    /**
     * @param string $a
     * @return string
     */
    public function myFunction($a)
    {
        return ':(';
    }
}

Reproduces without extensions: Yes

I believe this a very recent breakage because I have not noticed this before and I use a decent amount of trait classes.
Currently what it looks like:

Expected (had to set syntax to blade to get it to look correct):

This should be fixed in the Insiders build, would appreciate it if you try it out there.
https://code.visualstudio.com/insiders

Oh dope. Works. Thanks @roblourens!


Add plugin sbt tmpfs

more info on repo: https://github.com/cuzfrog/sbt-tmpfs

Hi @cuzfrog,
Thank you for your contribution! We really value the time you've taken to put this together.
Before we proceed with reviewing this pull request, please sign the Lightbend Contributors License Agreement:
http://www.lightbend.com/contribute/cla

Thanks!


add EXPOSE of EXPOSE_PORT, default 8080 (fixes #115)

@rhuss @gunnarmorling @edewit @alexkieling @goldmann any strong objection that I merge this?
It's (IMHO) a nice solution for #115 ...


[Component] Dropdown -  investigate the possibility to go from controlled to uncontrolled

Request from Pro-Ads team: https://adevinta.slack.com/archives/C0671KCP5J5/p1708943227258399

Solution shared to Pro-Ads team. Waiting for their feedback.

PRo-Ads team ok with the feedback.


Plot titles with multiple lines

Would be nice, for plots, to have titles over at least two lines.

For hacktoberfest. This change must be done inside ./plot


Fix metadata test

Should be fixed with the Apollo develop branch now.
@abretaud  You have to submit the JSON as strings as string, not JSON is native to the Apollo back-end.

@nathandunn added another test failing: https://github.com/galaxy-genome-annotation/python-apollo/pull/17/commits/c82ad2d728dd85d0b085aa1a3dcae7ecfc6c5b74 = deleting an organism by its id with the remote api

Another failing test: for some reason when updating an organism in remote mode, publicMode is set to True while it should not: https://github.com/galaxy-genome-annotation/python-apollo/pull/17/commits/b81efaed55a10ca199198c27c4c1b11f3122a857#diff-6ed0ac4ee19d8186384f9c6da0f89f1fR51

Another test case that fails: when updating an organism with the same fasta but a different directory, sequences are duplicated in the db
(sorry for the flow of bug reports!)

Another test case that fails: when updating an organism with the same fasta but a different directory, sequences are duplicated in the db

That is the correct implementation.   It duplicates the sequence in the database, since a sequence is owned by an organism.

(sorry for the flow of bug reports!)

Not a problem.  I've added them to fix up at the top.

Arf I didn't know it was implemented like this, did it change or was it always like this? So the annotations are lost?
I often want to update an org like this just because I generated a new jbrowse in galaxy with the same reference sequence, but different tracks/display settings
Would it be possible (optional?) to reuse the old sequence in the db if they are the same in the new data dir (same name+length)?

I think I was talking about duplicating genomes.    I'll add it here: https://github.com/GMOD/Apollo/issues/2293

Incorrectly closed this when merging a separate repository (!!!)

@abretaud  Are you planning on using the travis cache?

All tests with local apollo, but still getting failures with the docker versions.

@abretaud  this works for me locally:

__default: local
local:
    url: "http://localhost:8080/apollo"
    username<EMAIL_ADDRESS>    password: "password"

@abretaud  Any ideas why we get the 4 errors from the quay build?

@nathandunn I think the 2 org deletion errors come from the change in the api at https://github.com/GMOD/Apollo/pull/2298/files#diff-dd23bc0329e522c1d6a07295b706dc1fR53 -> would it be possible to keep the same param name as before? I think it's never desirable to change an api signature, and here I think "organism" is as good as "id"
I'll look at the 2 others

@abretaud  / @erasche
So good news / bad news.

works against a local Apollo just fine, all tests pass
works against a local DOCKER build just fine (docker build .), all tests pass
fails (4) against an automated docker build against quay.io or docker hub builds of either develop or the tag
build locally and pushing up tag (quay.io/gmod/apollo:local-build-test)

My next test
Any ideas?

@abretaud  So all of the code fixes we did worked, but the docker image being built remotely wasn't getting the newest image.  I updated it to use git clone  directly (it always pulls off of develop at the moment), but if you have a better idea of a way to do this.
This test should work regardless now.

@abretaud  I think that this can / should be merged (pending review).
Let me know if there should be further changes.


Missing parentheses in Wiki Setup Example

Hi there,
I was following the steps on how to add the OpenAPI plugin for Javalin with Swagger UI:
https://github.com/javalin/javalin-openapi/wiki/2.-Setup
and I noticed that the provided code is missing parentheses at the end in order to work properly.

I've updated the page, should be fine now, thanks :)


Design a logo for chords.

Design
Problem Statement
I would like the contributor to design a logo for our bots. The logo will be used as the official avatar for the bot.
Expectation
With a Pull Request I would like the contributor to add a snap of the logo as well for reviewing purpose.

@amanjha8100 I would like to work on this. Please assign.


reduce contract size of stableswap

Description

Type of change

[ ] Docs change / dependency upgrade
[ ] Configuration / tooling changes
[x] Refactoring
[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Requires changes in customer code

High-level change(s) description - from the user's perspective

Related Issue(s)
Fixes
Related pull request(s)

also -- what's the final size here?

final size seems to still be too large for mainnet on the StableSwap.
were going to be using the StableSwapFacet when we bootstrap our own AMMs and its likely any external AMM would write their own logic. should we just remove this from any deployments and explicitly mark it as oversized for mainnet so only an example implementation?

final size seems to still be too large for mainnet on the StableSwap.
were going to be using the StableSwapFacet when we bootstrap our own AMMs and its likely any external AMM would write their own logic. should we just remove this from any deployments and explicitly mark it as oversized for mainnet so only an example implementation?

I actually thought StableSwap was just a deprecated contract from before our diamond upgrade

I actually thought StableSwap was just a deprecated contract from before our diamond upgrade

It's not deprecated, but it won't be used directly in prod deployments. It is useful to have for testing, and may as well be included since it's been in the audit scopes


AUTH password configuring

Good morning! Could you specify is it possible to set up an AUTH passsword if you configure this option for the redis service.
I've tried to use ConfigurationOptions:
    .AddOperationalStore(opt =>
    {
        opt.RedisConnectionString = "localhost:6379";
        opt.ConfigurationOptions = new ConfigurationOptions {Password = "redispassword"};
    });

But anyway I got the following error:

It was not possible to connect to the redis server(s); to create a disconnected multiplexer, disable AbortOnConnectFail. AuthenticationFailure on PING

It doesn't work in this way too:
    .AddOperationalStore(opt =>
    {
        opt.RedisConnectionString = "redispassword@localhost:6379";
    });

If I use the same password with redis-cli is it OK:

redis <IP_ADDRESS>:6379> auth redispassword
OK

@AliBazzi I've found the right way! You were right, it is not about the IdentityServer4.Contrib.RedisStore. All you need just set a password in connection string like this:

"localhost:6379,password=password"

The StackExchenge doc:

https://stackexchange.github.io/StackExchange.Redis/Configuration

@ddydeveloper
Great that your problem is solved !