[BUG] Problems installing and running getting started notebooks

Bug description
Dependency conflict on pip install
Steps/Code to reproduce bug

Create and activate rapids conda environment with conda create -y -n rapids -c rapidsai -c nvidia -c conda-forge rapids=22.06 python=3.8 cudatoolkit=11.2
Pip install as instructed in README pip install merlin-models

Expected behavior
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
dask-cudf 22.6.1 requires cupy-cuda115, which is not installed.
cudf 22.6.1 requires cupy-cuda115, which is not installed.
cudf-kafka 22.6.1 requires cython, which is not installed.

Running the first cell of the getting started notebook, Tensorflow is then missing
ModuleNotFoundError: No module named 'tensorflow'

I try to pip install this with pip install tensorflow>=2.8, and the this fails with the same error:
(rapids-merlin-models) azureuser@mason-v100-new:~/cloudfiles/code/Users/mason.cusack$ pip install tensorflow>=2.8
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
cudf 22.6.1 requires cupy-cuda115, which is not installed.
cudf-kafka 22.6.1 requires cython, which is not installed.
cudf 22.6.1 requires protobuf<3.21.0a0,>=3.20.1, but you have protobuf 3.19.6 which is incompatible.

Environment details

Merlin version: merlin-core==0.10.0, merlin-models==0.10.0
Platform: Ubuntu 20.04
Python version: 3.8
PyTorch version (GPU?):
Tensorflow version (GPU?): 2.11.0 (installed as in requirements >=2.8)

Additional context

I then ran
pip install cupy-cuda115
pip install cython

And after this pip install tensorflow>=2.8 runs without error.
The first cell of the getting started notebook, when run, then warns:
  CuPy may not function correctly because multiple CuPy packages are installed
  in your environment:

    cupy, cupy-cuda115

I followed the advice on the webpage the warning links to, and because I have the cuda toolkit 11.2 installed, I uninstall other cupy installations and pip install cupy-cuda11x.
After this the first cell of the getting started notebook runs but the second fails with
ImportError: ('nvtabular is required for this feature.', 'Please install it with `pip install nvtabular`.')

So I pip install and the second cell runs, with the warning
Initializing an NVTabular Dataset in CPU mode.This is an experimental feature with extremely limited support!

But then fails with
NameError                                 Traceback (most recent call last)
Cell In[3], line 2
      1 input_path = os.environ.get("INPUT_DATA_DIR", os.path.expanduser("~/merlin-models-data/movielens/"))
----> 2 train, valid = get_movielens(variant="ml-1m", path=input_path)

File /anaconda/envs/rapids-merlin-models/lib/python3.8/site-packages/merlin/datasets/entertainment/movielens/dataset.py:85, in get_movielens(path, variant, overwrite, transformed_name, nvt_workflow, **kwargs)
     83 nvt_path_exists = train_path.exists() and valid_path.exists()
     84 if not nvt_path_exists or overwrite:
---> 85     transform_movielens(
     86         raw_path, nvt_path, nvt_workflow=nvt_workflow, variant=variant, **kwargs
     87     )
     89 train = merlin.io.Dataset(str(train_path), engine="parquet")
     90 valid = merlin.io.Dataset(str(valid_path), engine="parquet")

File /anaconda/envs/rapids-merlin-models/lib/python3.8/site-packages/merlin/datasets/entertainment/movielens/dataset.py:143, in transform_movielens(raw_data_path, output_path, nvt_workflow, variant, **kwargs)
    141     _nvt_workflow = default_ml25m_transformation(**locals())
    142 elif variant == "ml-1m":
--> 143     _nvt_workflow = default_ml1m_transformation(**locals())
    144 elif variant == "ml-100k":
    145     _nvt_workflow = default_ml100k_transformation(**locals())

File /anaconda/envs/rapids-merlin-models/lib/python3.8/site-packages/merlin/datasets/entertainment/movielens/dataset.py:266, in default_ml1m_transformation(raw_data_path, **kwargs)
    258 joined = (
    259     ["userId", "movieId"]
    260     >> ops.JoinExternal(movies, on=["movieId"])
    261     >> ops.JoinExternal(users, on=["userId"])
    262 )
    264 cat = lambda: nvt.ops.Categorify(dtype="int32")  # noqa
--> 266 cat_features = joined >> cat()
    267 label = nvt.ColumnSelector(["rating"])
    269 # Columns to apply to

File /anaconda/envs/rapids-merlin-models/lib/python3.8/site-packages/merlin/datasets/entertainment/movielens/dataset.py:264, in default_ml1m_transformation.<locals>.<lambda>()
    257 users = df_lib.read_parquet(os.path.join(raw_data_path, "users_converted.parquet"))
    258 joined = (
    259     ["userId", "movieId"]
    260     >> ops.JoinExternal(movies, on=["movieId"])
    261     >> ops.JoinExternal(users, on=["userId"])
    262 )
--> 264 cat = lambda: nvt.ops.Categorify(dtype="int32")  # noqa
    266 cat_features = joined >> cat()
    267 label = nvt.ColumnSelector(["rating"])

NameError: name 'nvt' is not defined

Hi @rnyak,
I'm still having these issues today. Going to see if there's any overlap from the issues resolved with Transformers4Rec that might help and report back.
I am a bit concerned that the nvt NameError might be a genuine problem.
Let me know if you have any immediate suggestions.

Import nvtabular works, I just get the warnings
CuPy may not function correctly because multiple CuPy packages are installed
in your environment:
cupy, cupy-cuda11x

Follow these steps to resolve this issue:
1. For all packages listed above, run the following command to remove all
   existing CuPy installations:

     $ pip uninstall <package_name>

  If you previously installed CuPy via conda, also run the following:

     $ conda uninstall cupy

2. Install the appropriate CuPy package.
   Refer to the Installation Guide for detailed instructions.

     https://docs.cupy.dev/en/stable/install.html

Import nvtabular works after pip install, but I'm still getting the NameError above.
Originally I had installed Tensorflow>=2.8 as in the requirements and 2.11.0 was installed. This seems to import fine and detects the GPU (do let me know if this was actually wrong).
I followed your instruction:

pip install cudf-cu11 dask-cudf-cu11 --extra-index-url=https://pypi.ngc.nvidia.com
pip install nvtabular
pip install merlin-dataloader
pip install merlin-core>=0.2.0
pip install . --no-deps (with latest commit from source)
pip install tensorflow==2.10 (originally I was doing pip install tensorflow>=2.8.0 as in requirements)

After this when running model.fit I get the error
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
Cell In[5], line 1
----> 1 model.fit(train, batch_size=1024)

File /anaconda/envs/rapids-merlin-models/lib/python3.8/site-packages/merlin/models/tf/models/base.py:1127, in BaseModel.fit(self, x, y, batch_size, epochs, verbose, callbacks, validation_split, validation_data, shuffle, class_weight, sample_weight, initial_epoch, steps_per_epoch, validation_steps, validation_batch_size, validation_freq, max_queue_size, workers, use_multiprocessing, train_metrics_steps, pre, **kwargs)
   1101 def fit(
   1102     self,
   1103     x=None,
   (...)
   1124     **kwargs,
   1125 ):
   1126     x = _maybe_convert_merlin_dataset(x, batch_size, **kwargs)
-> 1127     self._maybe_set_schema(x)
   1129     validation_data = _maybe_convert_merlin_dataset(
   1130         validation_data, batch_size, shuffle=shuffle, **kwargs
   1131     )
   1133     callbacks = self._add_metrics_callback(callbacks, train_metrics_steps)

File /anaconda/envs/rapids-merlin-models/lib/python3.8/site-packages/merlin/models/tf/models/base.py:1086, in BaseModel._maybe_set_schema(self, maybe_loader)
   1083 target_tags = [Tags.TARGET, Tags.BINARY_CLASSIFICATION, Tags.REGRESSION]
   1084 if self.input_schema:
   1085     loader_output_features = set(
-> 1086         loader.output_schema.excluding_by_tag(target_tags).column_names
   1087     )
   1088     model_input_features = set(self.input_schema.column_names)
   1089     schemas_match = loader_output_features == model_input_features

File /anaconda/envs/rapids-merlin-models/lib/python3.8/site-packages/merlin/models/tf/loader.py:335, in Loader.output_schema(self)
    333 @property
    334 def output_schema(self) -> Schema:
--> 335     output_schema = super().output_schema
    336     for map_fn in self._map_fns:
    337         if hasattr(map_fn, "compute_output_schema"):

AttributeError: 'super' object has no attribute 'output_schema'

I'll try running through the process again to make sure I didn't get anything wrong.

Followed the above again exactly in a new conda environment and I get the same AttributeError.

@masoncusack what are the versions of the dataloader, core, nvtabular? can you please check and write here?

nvtabular==1.5.0
merlin-dataloader==0.0.4
merlin-core==0.10.0

Hello @masoncusack can you try pip installing your data loader with the following:
pip install --upgrade git+https://github.com/NVIDIA-Merlin/dataloader.git --no-deps
Let me know if that fixes your error.

Hi @jperez999, I've done that and the first notebook now seems to run all the way through.
I do get logging errors and the following warnings running get_movielens
Message: 'A GPU was detected but rapids is not installed.'
Arguments: ('NVTabular will not be able to use GPU.', 'Look at the documentation for more information at rapids.ai')
/anaconda/envs/rapids-dataloader-from-source/lib/python3.8/site-packages/merlin/io/dataset.py:253: UserWarning: Initializing an NVTabular Dataset in CPU mode.This is an experimental feature with extremely limited support!
  warnings.warn(
/anaconda/envs/rapids-dataloader-from-source/lib/python3.8/site-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.USER_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.USER: 'user'>, <Tags.ID: 'id'>].
  warnings.warn(
/anaconda/envs/rapids-dataloader-from-source/lib/python3.8/site-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.ITEM_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.ITEM: 'item'>, <Tags.ID: 'id'>].
  warnings.warn(

2nd notebook runs fine.
Then on running the imports for the third notebook, the kernel dies with:
Canceled future for execute_request message before replies were done
The Kernel crashed while executing code in the the current cell or a previous cell. Please review the code in the cell(s) to identify a possible cause of the failure. Click [here](https://aka.ms/vscodeJupyterKernelCrash) for more info. View Jupyter [log](command:jupyter.viewOutput) for further details.

@masoncusack these are not errors they are just warnings. Besides, are you killing (shutting down) the kernels before you move on to the next notebook? Meaning your GPU memory is free right, when you move to the next?

Yes, but I don't want to get in the habit of ignoring warnings. A lot of them I don't understand
Could not load dynamic library 'libnvinfer_plugin.so.7'; dlerror: libnvinfer_plugin.so.7: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH:  <---Not sure whether this kind of thing is important and might break something later on or not.

So making sure we have full context.
I restarted and imports worked fine. Now in the second code cell (feature engineering with NVTabular) I'm getting the error
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
Cell In[3], line 9
      6 SYNTHETIC_DATA = eval(os.environ.get("SYNTHETIC_DATA", "True"))
      8 if SYNTHETIC_DATA:
----> 9     train, valid = generate_data("aliccp-raw", int(NUM_ROWS), set_sizes=(0.7, 0.3))
     10     # save the datasets as parquet files
     11     train.to_ddf().to_parquet(os.path.join(DATA_FOLDER, "train"))

File /anaconda/envs/rapids-dataloader-from-source/lib/python3.8/site-packages/merlin/datasets/synthetic.py:136, in generate_data(input, num_rows, set_sizes, min_session_length, max_session_length, device)
    127         new_properties["value_count"]["max"] = max_session_length
    128     schema[col] = ColumnSchema(
    129         name=schema[col].name,
    130         tags=schema[col].tags,
   (...)
    133         is_list=True,
    134     )
--> 136 df = generate_user_item_interactions(
    137     schema, num_rows, min_session_length, max_session_length, device=device
    138 )
    140 if list(set_sizes) != [1.0]:
    141     num_rows = df.shape[0]

File /anaconda/envs/rapids-dataloader-from-source/lib/python3.8/site-packages/merlin/datasets/synthetic.py:232, in generate_user_item_interactions(schema, num_interactions, min_session_length, max_session_length, device)
    226 if user_id_cols:
    227     user_id_col = user_id_cols[0]
    228     data[user_id_col.name] = _array.clip(
    229         _array.random.lognormal(3.0, 1.0, num_interactions).astype(_array.int32),
    230         1,
    231         user_id_col.int_domain.max,
--> 232     ).astype(str(user_id_col.dtype.to_numpy.name))
    233     features = list(schema.select_by_tag(Tags.USER).remove_by_tag(Tags.USER_ID))
    234     data = generate_conditional_features(
    235         data,
    236         features,
   (...)
    240         device=device,
    241     )

AttributeError: 'numpy.dtype[int32]' object has no attribute 'to_numpy'

I'll look into this further tomorrow. Sorry I am just pasting errors to you but there have been so many I'm not sure what is solvable without the understanding of a maintainer and what isn't.
Is there a near-term plan to fix the installation process of this and Transformers4Rec, so we can just install a specific version and have all the sub dependencies installed and pinned? I'm concerned that installing from source exposes us to breaking changes, so probably wouldn't be possible in production.

@masoncusack sorry for the inconvenience and agree on that installing from source exposes us to breaking changes, so probably wouldn't be possible in production.. Merlin team is working on publishing pypi versions, hopefully that'd help to the users.

@masoncusack I have attached a temporary fix for your situation, the following is a snippet from a dockerfile. This is the bare minimum necessary to run the getting-started-movielens notebooks. Some of the lines you wont need because they are for installing python 3.8. The last RUN command is probably where most of your attention should fall.
FROM nvcr.io/nvidia/cuda:11.8.0-devel-ubuntu22.04

RUN apt update && \
    apt install software-properties-common curl git -y && \
    add-apt-repository ppa:deadsnakes/ppa -y
RUN apt update && \
    DEBIAN_FRONTEND=noninteractive TZ=Etc/UTC apt install -y \
        python3.8 \
        python3.8-dev \
        python3.8-distutils \
        # Required for Merlin
        graphviz \
        # Required for Tensorflow, to recognize GPUs
        libcudnn8

RUN ln -s /usr/bin/python3.8 /usr/bin/python

RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && \
    python3.8 get-pip.py

RUN pip install cudf-cu11 dask-cudf-cu11 --extra-index-url=https://pypi.ngc.nvidia.com && \
    # packages required for running the unit/integration tests in merlin
    pip install pytest fiddle wandb nest-asyncio testbook git+https://github.com/rapidsai/asvdb.git@main && \
    pip install tensorflow-gpu==2.9.2 scikit-learn tritonclient[all] && \
    pip install protobuf==3.20.3 pynvml ipython ipykernel graphviz && \
    # pip install merlin-core nvtabular merlin-models merlin-dataloader transformers4rec && \
    pip install --upgrade<EMAIL_ADDRESS>\
<EMAIL_ADDRESS>\
<EMAIL_ADDRESS>\
<EMAIL_ADDRESS>\
<EMAIL_ADDRESS>
If you end up having issues with tensorflow, where it says it cannot detect GPUs. Make sure to install the libcudnn package with apt. That should help with that. And if graphviz does not work, because its not in the PATH you may also want to install it via apt. With this set of instructions you should be able to make it through the third notebook of the getting started movielens. You will not be able to complete the final notebook because Tritonserver is not available in the environment. I am currently working to fix that, but that is not ready yet.
Please let me know if this does not unblock you. Hope this helps.

I got same issues. Any workaround?

I got same issues. Any workaround?

@liyunrui could you please create another bug ticket with your issues/errors? thanks.

```shell
pip install "merlin-models[tensorflow,nvtabular]" "protobuf>=3.20.1,<3.21" notebook

I did
Step1:conda create -y -n rapids-22.08 -c rapidsai -c nvidia -c conda-forge rapids=22.08 python=3.8 cudatoolkit=11.5
Step2: conda activate rapids-22.08
Step3: pip install "merlin-models[tensorflow,nvtabular]" "protobuf>=3.20.1,<3.21" notebook
But got error while in step3 in the below:
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
dask-cudf 22.8.1 requires cupy-cuda115<11.0.0a0,>=9.5.0, which is not installed.
cudf 22.8.1 requires cupy-cuda115<11.0.0a0,>=9.5.0, which is not installed.
cudf-kafka 22.8.1 requires cython, which is not installed.

are you working with Mason? if no, can you please open a new bug ticket? thanks.

hi @oliverholworthy
Looking into it but with this approach I'm currently getting the following error in the imports of notebook 3.
---------------------------------------------------------------------------
CUDARuntimeError                          Traceback (most recent call last)
Cell In[2], line 4
      1 import os
      2 import numpy as np
----> 4 from nvtabular.loader.tf_utils import configure_tensorflow
      6 configure_tensorflow()
      8 import nvtabular as nvt

File /anaconda/envs/rapids-22.08/lib/python3.8/site-packages/nvtabular/__init__.py:20
     18 # this is to mimic the previous API, but all of these should probably be removed
     19 import merlin.dag as graph  # noqa
---> 20 from merlin import io
     21 from merlin.core import dispatch, utils  # noqa
     22 from merlin.dag import ColumnSelector
File /anaconda/envs/rapids-22.08/lib/python3.8/site-packages/merlin/io/__init__.py:18
      1 #
      2 # Copyright (c) 2022, NVIDIA CORPORATION.
      3 #
   (...)
     16
     17 # flake8: noqa
---> 18 from merlin.io import dataframe_iter, dataset, shuffle
     19 from merlin.io.dataframe_iter import DataFrameIter
     20 from merlin.io.dataset import Dataset

File /anaconda/envs/rapids-22.08/lib/python3.8/site-packages/merlin/io/dataset.py:33
     30 from fsspec.core import get_fs_token_paths
     31 from fsspec.utils import stringify_path
---> 33 from merlin.core.dispatch import (
     34     convert_data,
     35     hex_to_int,
     36     is_dataframe_object,
     37     is_list_dtype,
     38     list_val_dtype,
     39 )
     40 from merlin.core.utils import device_mem_size, global_dask_client, set_client_deprecated
     41 from merlin.io.csv import CSVDatasetEngine
File /anaconda/envs/rapids-22.08/lib/python3.8/site-packages/merlin/core/dispatch.py:36
     34 if HAS_GPU:
     35     try:
---> 36         import cudf
     37         import cupy as cp
     38         import dask_cudf

File /anaconda/envs/rapids-22.08/lib/python3.8/site-packages/cudf/__init__.py:5
      1 # Copyright (c) 2018-2022, NVIDIA CORPORATION.
      3 from cudf.utils.gpu_utils import validate_setup
----> 5 validate_setup()
      7 import cupy
      8 from numba import config as numba_config, cuda

File /anaconda/envs/rapids-22.08/lib/python3.8/site-packages/cudf/utils/gpu_utils.py:55, in validate_setup()
     53 except CUDARuntimeError as e:
     54     if e.status in notify_caller_errors:
---> 55         raise e
     56     # If there is no GPU detected, set `gpus_count` to -1
     57     gpus_count = -1
File /anaconda/envs/rapids-22.08/lib/python3.8/site-packages/cudf/utils/gpu_utils.py:52, in validate_setup()
     31 notify_caller_errors = {
     32     cudaError_t.cudaErrorInitializationError,
     33     cudaError_t.cudaErrorInsufficientDriver,
   (...)
     48     cudaError_t.cudaErrorApiFailureBase,
     49 }
     51 try:
---> 52     gpus_count = getDeviceCount()
     53 except CUDARuntimeError as e:
     54     if e.status in notify_caller_errors:

File /anaconda/envs/rapids-22.08/lib/python3.8/site-packages/rmm/_cuda/gpu.py:101, in getDeviceCount()
     99 status, count = cudart.cudaGetDeviceCount()
    100 if status != cudart.cudaError_t.cudaSuccess:
--> 101     raise CUDARuntimeError(status)
    102 return count

CUDARuntimeError: cudaErrorInitializationError: initialization error

@masoncusack that looks like it's failing on import cudf. Maybe check that you can import cudf in a separate python shell to see if it's a CUDA/RAPIDS setup issue.

Hello @masoncusack if you had issues with the previous pip install version I supplied, thanks to work @oliverholworthy completed. We now have the appropriate packages available. That means the following works as well.
FROM nvcr.io/nvidia/cuda:11.8.0-devel-ubuntu22.04

ENV DEBIAN_FRONTEND=noninteractive

RUN apt update && \
    apt install software-properties-common curl git -y && \
    add-apt-repository ppa:deadsnakes/ppa -y
RUN apt update && \
    TZ=Etc/UTC apt install -y \
        python3.8 \
        python3.8-dev \
        python3.8-distutils \
        # Required for Merlin
        graphviz \
        # Required for Tensorflow, to recognize GPUs
        libcudnn8

RUN ln -s /usr/bin/python3.8 /usr/bin/python

RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && \
    python3.8 get-pip.py

RUN pip install cudf-cu11 dask-cudf-cu11 --extra-index-url=https://pypi.ngc.nvidia.com && \
    # packages required for running the unit/integration tests in merlin
    pip install pytest fiddle wandb nest-asyncio testbook git+https://github.com/rapidsai/asvdb.git@main && \
    pip install tensorflow-gpu==2.9.2 scikit-learn tritonclient[all] && \
    pip install protobuf==3.20.3 pynvml ipython ipykernel graphviz && \
    pip install merlin-core nvtabular merlin-models merlin-dataloader transformers4rec merlin-systems

Notice that you are now using the latest releases of the merlin libraries available on pypi. I have tested this and I have been able to get through the first 3 notebooks of the getting-started-movielens example. We cannot get through the fourth because we are missing the tritonserver install. Currently we are working on creating a tritonserver install from source.

Hello @masoncusack - does it work for you now? One QQ: In which component of Merlin are you interested? Is it Merlin Models session-based?

I tested it myself, as well. I used a clean ubuntu1804 image and installed NVIDIA Driver, etc. in the image.

I install NVIDIA Driver 470.57.02 with CUDA 11.4 (our (support matrix)[https://nvidia-merlin.github.io/Merlin/main/support_matrix/support_matrix_merlin_tensorflow.html] shows which driver are supported)
Note that I the 3rd code block is specific to Ubuntu1804 - that might need to be updated
RAPIDs needs to be installed for the correct CUDA version (cudatoolkit=11.4 in the create conda command)
I need to add links for libcublas.so and libcublasLt.so, otherwise, TensorFlow will not be able to handle RNNs and Transformers.

`sudo apt update -y &&
sudo apt install -y build-essential &&
sudo apt install -y --no-install-recommends software-properties-common
wget https://developer.download.nvidia.com/compute/cuda/11.4.1/local_installers/cuda_11.4.1_470.57.02_linux.run
sudo sh cuda_11.4.1_470.57.02_linux.run
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin  &&
sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600  &&
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/3bf863cc.pub  &&
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/ /"  &&
sudo apt-get update -y && sudo apt install -y --allow-change-held-packages git python3.8 python3-setuptools wget openssl libssl-dev zlib1g-dev libcudnn8 libcudnn8-dev
wget https://repo.anaconda.com/miniconda/Miniconda3-py38_4.10.3-Linux-x86_64.sh && bash Miniconda3-py38_4.10.3-Linux-x86_64.sh -b
~/miniconda3/bin/conda init
bash
conda create -y -n rapids -c rapidsai -c nvidia -c conda-forge rapids=22.06 python=3.8 cudatoolkit=11.4
conda activate rapids
pip install pytest testbook
git clone https://github.com/rapidsai/asvdb.git build-env &&
pushd build-env &&
python setup.py install &&
popd &&
rm -rf build-env
git clone https://github.com/NVIDIA-Merlin/core.git && cd core && git fetch origin && git checkout tags/v0.10.0 && pip install . && cd ..
git clone https://github.com/NVIDIA-Merlin/NVTabular.git && cd NVTabular && git fetch origin && git checkout tags/v1.8.0 && pip install . && cd ..
git clone https://github.com/NVIDIA-Merlin/dataloader.git && cd dataloader && git fetch origin && git checkout tags/v0.0.4 && pip install . && cd ..
pip install numpy==1.20.3
pip install tensorflow-gpu==2.10.0
git clone https://github.com/NVIDIA-Merlin/models.git && cd models && git fetch origin && git checkout tags/v0.11.0 && pip install . && cd ..
pip install fiddle wandb
pip install numpy==1.20.3
pip install protobuf==3.20.1
ln -s ~/miniconda3/envs/rapids/lib/libcublas.so.11 ~/miniconda3/envs/rapids/lib/libcublas.so.10
ln -s ~/miniconda3/envs/rapids/lib/libcublasLt.so.11 ~/miniconda3/envs/rapids/lib/libcublasLt.so.10`

Hi folks, sorry for the delay in responding.
Thanks for the input. I seem to have gotten things working as follows, based on @bschifferer's approach above:
conda create -y -n rapids -c rapidsai -c nvidia -c conda-forge rapids=22.06 python=3.8 cudatoolkit=11.4

pip install pytest testbook

git clone https://github.com/rapidsai/asvdb.git build-env
pushd build-env
python setup.py install
popd
rm -rf build-env

git clone https://github.com/NVIDIA-Merlin/core.git
cd core
git fetch origin
git checkout tags/v0.10.0
# HEAD is now at 2fc6889c add schema parameter to the `repartition` method (#192)
pip install .
cd ..

git clone https://github.com/NVIDIA-Merlin/NVTabular.git
cd NVTabular
git fetch origin
git checkout tags/v1.8.0
pip install .
cd ..

git clone https://github.com/NVIDIA-Merlin/dataloader.git
cd dataloader
git fetch origin
git checkout tags/v0.0.4
# HEAD is now at fd5d3fc Use tf.function for list column operations (#89)
pip install .
cd ..

pip install numpy==1.20.3
pip install tensorflow-gpu==2.10.0
git clone https://github.com/NVIDIA-Merlin/models.git
cd models
git fetch origin
git checkout tags/v0.11.0
# HEAD is now at b90e9a1b Update branch name extraction for tag builds (#972)
pip install .
cd ..

pip install fiddle wandb
pip install numpy==1.20.3
pip install protobuf==3.20.1

ln -s /anaconda/envs/rapids/lib/libcublas.so.11 ~/anaconda/envs/rapids/lib/libcublas.so.10
# ln: failed to create symbolic link '/home/azureuser/anaconda/envs/rapids/lib/libcublas.so.10': No such file or directory

 ln -s /anaconda/envs/rapids/lib/libcublasLt.so.11 ~/anaconda/envs/rapids/lib/libcublasLt.so.10
# ln: failed to create symbolic link '/home/azureuser/anaconda/envs/rapids/lib/libcublasLt.so.10': No such file or directory

All good, but when running 4th notebook.
On import seedir as sd:
ModuleNotFoundError                       Traceback (most recent call last)
Cell In[8], line 1
----> 1 import seedir as sd
      3 sd.seedir(
      4     DATA_FOLDER,
      5     style="lines",
   (...)
      9     sort=True,
     10 )

ModuleNotFoundError: No module named 'seedir'

Pip install might be broken, I restarted the kernel and got the same result, so tried installing manually from the terminal
pip install seeder
Which worked.
On notebook 7 under “Training an implicit model”, I get the following error during the import:
---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
Cell In[12], line 1
----> 1 from merlin.models.implicit import BayesianPersonalizedRanking

File /anaconda/envs/rapids/lib/python3.8/site-packages/merlin/models/implicit/__init__.py:16
      1 #
      2 # Copyright (c) 2022, NVIDIA CORPORATION.
      3 #
   (...)
     14 # limitations under the License.
     15 #
---> 16 import implicit
     17 from implicit.evaluation import ranking_metrics_at_k
     19 from merlin.io import Dataset

ModuleNotFoundError: No module named 'implicit'

This is odd because the IDE detects the existence of this directory and the BayesianPersonalizedRanking class.

Happy to pursue a solution to this but I don’t think it’s going to affect our intended use case, at least for now.
As I said with the Transformers4Rec issue, this is fine for us looking into pursuing offline testing with the library and continuing to evaluate whether to use Merlin models, but this isn't an install process that we're likely to be comfortable within the context of an automated pipeline updating models in production. So hopefully the ability for us to simply pip install merlin-models or similar is on the roadmap.
Huge thanks for all the input.

@rnyak , can this bug be closed

@masoncusack we are glad that you can install the libs. And thanks to providing your steps for those who might go through the same issues. Just to clarify, I assume you did not install NV drivers and and nvidia docker toolkit right? Your Azure instance come with these installed, am I correct?
Can you please create a separate ticket for the ModuleNotFoundError: No module named 'implicit'. I am closing this ticket.

@jperez999
Hi, I initially did my merlin modeling on Google Colab, and now trying to deploy the model training & upload job on airflow KubernetePodOperator with docker image.
I've been struggling since 3 weeks ago - can you help me figuring out what base image to use if Iwould like to use following merlin versions?
!pip install -U<EMAIL_ADDRESS>!pip install -U<EMAIL_ADDRESS>!pip install -U<EMAIL_ADDRESS>!pip install -U<EMAIL_ADDRESS>!pip install merlin-systems==23.04
!pip install tensorflow==2.12.0


user activity page enhancement

the user activity page should show a summary of all user activities on the platform (Ex. asked questions, answers to asked questions, ...).

Would like to work on this issue if that's alright.

ok
let me know if you encounter any difficulties


bundle path error

Hi, @chiunam:
I installed the latest version CTAssetsPickerController with cocoapods and built it successfully, but when
tested it in simulator i got this error. It happened when i clicked the 'Camera Roll' cell in the first view.
"Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSPlaceholderString initWithFormat:locale:arguments:]: nil argument'"
I think maybe there is something wrong with localization bundle path. So is there something i need to do with the bundle?
other info: Xcode 6.2, iOS 8, "use_frameworks!" in podfile
Thanks for sharing CTAssetsPickerController!

Hi @NilStack, may I know which localisation used in your app?

I don't set locale in my app. The language setting  in the simulator is English and region is United States.
Sorry i have few experience in localization.

@NilStack okay. That might be the differences between building pods with frameworks and static library. Let me check.

@chiunam Thanks for fixing it.

@NilStack Cool.


Test Case
tests/unit/llms/MistralModel_unit_test.py
Pytest Logs
FAILED tests/unit/llms/MistralModel_unit_test.py::test_astream[open-mixtral-8x7b] - TypeError: 'async_generator' object is not iterable
FAILED tests/unit/llms/MistralModel_unit_test.py::test_astream[open-mixtral-8x22b] - TypeError: 'async_generator' object is not iterable
FAILED tests/unit/llms/MistralModel_unit_test.py::test_astream[mistral-small-latest] - TypeError: 'async_generator' object is not iterable
FAILED tests/unit/llms/MistralModel_unit_test.py::test_astream[mistral-medium-latest] - TypeError: 'async_generator' object is not iterable
FAILED tests/unit/llms/MistralModel_unit_test.py::test_astream[mistral-large-latest] - TypeError: 'async_generator' object is not iterable
FAILED tests/unit/llms/MistralModel_unit_test.py::test_astream[open-mistral-nemo] - TypeError: 'async_generator' object is not iterable
FAILED tests/unit/llms/MistralModel_unit_test.py::test_astream[codestral-latest] - TypeError: 'async_generator' object is not iterable
FAILED tests/unit/llms/MistralModel_unit_test.py::test_astream[open-codestral-mamba] - TypeError: 'async_generator' object is not iterable
FAILED tests/unit/llms/MistralToolModel_unit_test.py::test_batch[mistral-small-latest] - mistralai.models.sdkerror.SDKError: API error occurred: Status 400
{"object":"error","message":"Expected last role User or Tool (or Assistant with prefix True) for serving but got assistant","type":"invalid_request_error","param":null,"code":null}
FAILED tests/unit/llms/MistralToolModel_unit_test.py::test_astream[open-mixtral-8x22b] - TypeError: 'async_generator' object is not iterable
FAILED tests/unit/llms/MistralToolModel_unit_test.py::test_astream[mistral-small-latest] - TypeError: 'async_generator' object is not iterable
FAILED tests/unit/llms/MistralToolModel_unit_test.py::test_astream[mistral-large-latest] - TypeError: 'async_generator' object is not iterable
FAILED tests/unit/llms/MistralToolModel_unit_test.py::test_astream[open-mistral-nemo] - TypeError: 'async_generator' object is not iterable
FAILED tests/unit/llms/MistralToolModel_unit_test.py::test_abatch[mistral-small-latest] - mistralai.models.sdkerror.SDKError: API error occurred: Status 400
{"object":"error","message":"Expected last role User or Tool (or Assistant with prefix True) for serving but got assistant","type":"invalid_request_error","param":null,"code":null}

Root Cause
TypeError: 'async_generator' object is not iterable
Potential Solutions
No response
Additional Context (optional)
No response
Type of Test Case
Unit

working on this


keyLabel for web no longer has the "Enter" value to handle enter key (also "Ctrl" keyLabel is not passed to code)

Steps to Reproduce
About 45 days ago I was working on a code that got "paused" in our backlog due prioritization. Now when I went back I could no longer get the event.keyLabel with the value "Enter" to detect when this key was pressed.
I can get Tab, Shift and others  keyLabels but I can't get Ctrl or Enter labels.
Just instantiate this widget and check the "terminal" to see the printed output
import 'package:flutter/cupertino.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:yoda/app_services.dart';

// ignore: must_be_immutable
class EnterKeyAwareTextFormField extends StatelessWidget {
  String labelText;
  String errorText;
  Function validator;
  Function onChanged;
  Function onEnterKeySubmitDataFunction;
  Icon icon;
  bool obscureText;
  TextInputType keyboardType;
  TextEditingController controller;
  Border border;
  String initialValue;
  int maxLines;
  bool autofocus;
  bool useBorderDecoration;
  TextStyle style;
  InputDecoration decoration;

  FocusNode _keyListenerFocusNode = FocusNode();
  FocusNode _inputListenerFocusNode = FocusNode();

  EnterKeyAwareTextFormField({
    @required this.onEnterKeySubmitDataFunction,
    @required this.labelText,
    this.border,
    this.errorText,
    this.controller,
    this.onChanged,
    this.validator,
    this.icon,
    this.keyboardType,
    this.obscureText = false,
    this.maxLines = 1,
    this.initialValue,
    this.autofocus = true,
    this.useBorderDecoration = false,
    this.style,
    this.decoration,
  });

  /**
   * Handles key events (enter and tab/shift+tab navigation)
   * When
   */
  onRawKeyboardEvent(RawKeyEvent event) {
   // This was added to "jump" the focus to the right field but don't work with the shift+tab
    if (_keyListenerFocusNode.hasFocus && !_inputListenerFocusNode.hasFocus) {
      _inputListenerFocusNode.requestFocus();
    }

    if (event is RawKeyUpEvent) {
      if (event.logicalKey == LogicalKeyboardKey.enter) {
        onEnterKeySubmitDataFunction();
      } else if (event.data is RawKeyEventDataWeb) {
        final data = event.data as RawKeyEventDataWeb;

        print(data.keyLabel);

        if (data.keyLabel == 'Enter' &&
            onEnterKeySubmitDataFunction is Function) {
          onEnterKeySubmitDataFunction();
        }
      } else if (event.data is RawKeyEventDataAndroid) {
        final data = event.data as RawKeyEventDataAndroid;

        print(data.keyCode);

        if (data.keyCode == 13 && onEnterKeySubmitDataFunction is Function) {
          onEnterKeySubmitDataFunction();
        }
      }
    }
    return event;
  }

  @override
  Widget build(BuildContext context) {
    return RawKeyboardListener(
      focusNode: _keyListenerFocusNode,
      onKey: this.onRawKeyboardEvent,
      child:
      TextFormField(
        focusNode: _inputListenerFocusNode,
        textInputAction: TextInputAction.done,
        autofocus: true,
        controller: controller,
        keyboardType: keyboardType,
        decoration: InputDecoration(
            contentPadding: EdgeInsets.all(0),
            labelText: labelText,
            hintStyle: TextStyle(color: Colors.grey[400]),
            icon: icon),
        validator: validator,
        onChanged: onChanged,
        obscureText: obscureText,
        maxLines: 1,
      ),
    );
  }
}

Expected results:
I should be able to use this code to detect that Enter key was pressed on the web
Actual results:
Any other keyLabel is printed, except Enter and Ctrl

Code Sample
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Material App',
      theme: ThemeData.dark(),
      home: Home(),
    );
  }
}

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Material App Bar'),
      ),
      body: Center(
        child: EnterKeyAwareTextFormField(
          labelText: 'Label',
          onEnterKeySubmitDataFunction: () {},
        ),
      ),
      floatingActionButton: FloatingActionButton(
        child: Icon(Icons.add),
        onPressed: () {},
      ),
    );
  }
}

class EnterKeyAwareTextFormField extends StatelessWidget {
  String labelText;
  String errorText;
  Function validator;
  Function onChanged;
  Function onEnterKeySubmitDataFunction;
  Icon icon;
  bool obscureText;
  TextInputType keyboardType;
  TextEditingController controller;
  Border border;
  String initialValue;
  int maxLines;
  bool autofocus;
  bool useBorderDecoration;
  TextStyle style;
  InputDecoration decoration;

  FocusNode _keyListenerFocusNode = FocusNode();
  FocusNode _inputListenerFocusNode = FocusNode();

  EnterKeyAwareTextFormField({
    @required this.onEnterKeySubmitDataFunction,
    @required this.labelText,
    this.border,
    this.errorText,
    this.controller,
    this.onChanged,
    this.validator,
    this.icon,
    this.keyboardType,
    this.obscureText = false,
    this.maxLines = 1,
    this.initialValue,
    this.autofocus = true,
    this.useBorderDecoration = false,
    this.style,
    this.decoration,
  });

  /**
   * Handles key events (enter and tab/shift+tab navigation)
   * When
   */
  onRawKeyboardEvent(RawKeyEvent event) {
    // This was added to "jump" the focus to the right field but don't work with the shift+tab
    if (_keyListenerFocusNode.hasFocus && !_inputListenerFocusNode.hasFocus) {
      _inputListenerFocusNode.requestFocus();
    }

    if (event is RawKeyUpEvent) {
      if (event.logicalKey == LogicalKeyboardKey.enter) {
        onEnterKeySubmitDataFunction();
      } else if (event.data is RawKeyEventDataWeb) {
        final data = event.data as RawKeyEventDataWeb;

        print(data.keyLabel);

        if (data.keyLabel == 'Enter' &&
            onEnterKeySubmitDataFunction is Function) {
          onEnterKeySubmitDataFunction();
        }
      } else if (event.data is RawKeyEventDataAndroid) {
        final data = event.data as RawKeyEventDataAndroid;

        print(data.keyCode);

        if (data.keyCode == 13 && onEnterKeySubmitDataFunction is Function) {
          onEnterKeySubmitDataFunction();
        }
      }
    }
    return event;
  }

  @override
  Widget build(BuildContext context) {
    return RawKeyboardListener(
      focusNode: _keyListenerFocusNode,
      onKey: this.onRawKeyboardEvent,
      child: TextFormField(
        focusNode: _inputListenerFocusNode,
        textInputAction: TextInputAction.done,
        autofocus: true,
        controller: controller,
        keyboardType: keyboardType,
        decoration: InputDecoration(
            contentPadding: EdgeInsets.all(0),
            labelText: labelText,
            hintStyle: TextStyle(color: Colors.grey[400]),
            icon: icon),
        validator: validator,
        onChanged: onChanged,
        obscureText: obscureText,
        maxLines: 1,
      ),
    );
  }
}

flutter doctor -v
[✓] Flutter (Channel dev, 1.20.0-0.0.pre, on Mac OS X 10.15.5 19F101, locale
    en-GB)
    • Flutter version 1.20.0-0.0.pre at /Users/tahatesser/Code/flutter_dev
    • Framework revision d9653445f4 (9 days ago), 2020-06-09 18:43:03 -0400
    • Engine revision e8c13aa012
    • Dart version 2.9.0 (build 2.9.0-14.0.dev 5c1376615e)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/tahatesser/Code/sdk
    • Platform android-30, build-tools 30.0.0
    • ANDROID_HOME = /Users/tahatesser/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.5, Build version 11E608c
    • CocoaPods version 1.9.3

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

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 46.0.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

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

[✓] Connected device (3 available)
    • macOS      • macOS      • darwin-x64     • Mac OS X 10.15.5 19F101
    • Web Server • web-server • web-javascript • Flutter Tools
    • Chrome     • chrome     • web-javascript • Google Chrome 83.0.4103.106

• No issues found!

/cc @mdebbar

No news on this problem?

Sorry for no news on this issue. We've been trying to revamp the keyboard API, which should be landed in the near future (progress to be found at https://github.com/flutter/flutter/issues/44918). The changes are mostly behind-the-scene and the API should feel familiar, but we try to perfect the mapping logic in the meantime. Hopefully your issue would be gone with the new API.
Nevertheless, your request seems pretty odd. The keyLabel is supposed to be the printable character of the key, so you should expect a "\n"' instead of "Enter"there; moreover, the idiomatic way to detect an Enter key is to directly compare logical keys, i.e.event.logicalKey == LogicalKeyboardKey.enter`.

Sorry for no news on this issue. We've been trying to revamp the keyboard API, which should be landed in the near future (progress to be found at https://github.com/flutter/flutter/issues/44918). The changes are mostly behind-the-scene and the API should feel familiar, but we try to perfect the mapping logic in the meantime. Hopefully your issue would be gone with the new API.
Nevertheless, your request seems pretty odd. The keyLabel is supposed to be the printable character of the key, so you should expect a "\n"' instead of "Enter"there; moreover, the idiomatic way to detect an Enter key is to directly compare logical keys, i.e.event.logicalKey == LogicalKeyboardKey.enter`.

Sorry for no news on this issue. We've been trying to revamp the keyboard API, which should be landed in the near future (progress to be found at #44918). The changes are mostly behind-the-scene and the API should feel familiar, but we try to perfect the mapping logic in the meantime. Hopefully your issue would be gone with the new API.
Nevertheless, your request seems pretty odd. The keyLabel is supposed to be the printable character of the key, so you should expect a "\n" instead of "Enter" there; moreover, the idiomatic way to detect an Enter key is to directly compare logical keys, i.e. event.logicalKey == LogicalKeyboardKey.enter.

TBF: Enter key is not a brealine. Over a button it activates a button, for example, on a list, enter selects the highlighted item. So, knowing that Enter key was pressed by label is important to create other widgets and set their action on "Enter" being pressed.

I don't quite get you. I agree that testing whether a key event comes from an enter key is surely important, but it should be done by comparing the logical key. It shouldn't be done by comparing the keyLabel.
Moreover, what you're describing seems like a perfect application for Shortcut. https://api.flutter.dev/flutter/widgets/Shortcuts-class.html

I'm closing this issue for now, but feel free to reply if interested, or reopen the issue if necessary.


Update topic model to use endpoint

Use the endpoint to send request to topic model ecs task instead of spinning a container.

This PR has been merged.


Not analyzing the bytes below JMP RCX is a problem

Describe the bug
As you can see in the image I provided, it's very strange that the opcodes below are not being analyzed
Expected behavior
The JMP RCX opcode specifies a conditional jump where the destination is decided in real-time. Naturally, not analyzing the bytes below, as you are doing, is a misconception, as it jumps to one of the opcode lines underneath that section.
Environment (please complete the following information):

OS: Windows 10
Java Version: 17.0.5
Ghidra Version: 10.3.3
Ghidra Origin: Official GitHub

Screenshots

You'll need to manually disassemble those bytes by pressing d on what you deem to be the next valid instruction because the static analysis cannot recognise those addresses as being used.

I'm aware of manual analysis, but I'm designing an extension, and for this extension, proper analysis of such functions should be done without the need for manual analysis.
I also don't understand why the analysis of such bytes is difficult when we know the start and end addresses. While there is a possibility for Ghidra to fix this, why is it imposing a static requirement on us users?

Similar situations exist in many places

It appears to be a computed switch stmt that is not recovering correctly, which Ghidra does try to do if all the pieces are in place for the analysis.  Just disassembling the code, either by hand or automatically is not enough.  The code needs to flow correctly to those locations.  Ghidra is conservative in it's normal disassembly and tries to disassemble things that are reachable in the code.  The switch recovery also ties the switch value with the destination case code.
There is most likely something wrong with the data flow that the decompiler, which is used for switch table recovery, can not follow.  There can be many reasons for this.  Not knowing anything about the binary you have, how it was loaded, etc.., I'll suggest a few things:

Looking at the code, it has a mix of 32bit register ops and 64bit register ops. Is this a mixed mode program or a 32-bit program loaded as a 64-bit program.  This can cause the upper part of the bigger registers bigger registers to have unknown values.
Could the program have been loaded in a wrong location, such that the switch table of values is not accessible
Is the memory for the switch table marked readonly? Sometimes the decompiler can't trust the values at a location
Could there be a non-returning function somewhere in the function that is messing up the stack or data flow?
Is there a function called that could have side-effects on the stack, such ask __chkstk?

Can you post the decompilation for one of the functions with the unrecovered jump table?
The switch looks like it has an initial lookup value table, that then indexes into another table of offsets from a base pointer.  This type of doubly indirect switch table calculations can cause trouble in data flow analysis.  You can try making the memory locations of the table read-only, however the lookup could be more complex than the decompiler will allow.
To answer your question about why this is difficult when you know the start and end addresses.  In general code can have embedded data, so you can't assume everything in the code section is actually code.

What about using Auto Analysis -> Aggressive Instruction Finding? Would that help?

It's best if I provide an example to help you understand me better. I will also include the addresses of the error locations.
0x14017110c = JMP RCX
0x140188b56 = JMP LAB
It's probably not such a sought-after thing; every 5 random applications likely yield this result.
x64.zip

I'm running into a similar issue. I'm looking at an x86-64 binary, and this looks like a compiler optimization that I've never run into before:
# RDI is a simple index value
# JUMPTABLE_LOCATION is a jumptable with dword-sized offsets relative to JUMPTABLE_LOCATION, which land at un-disassembled offsets in the function
# FUN_jump_RDX is just that - a single JMP RDX instruction, shared by a large amount of other functions
LEA        RSI,[JUMPTABLE_LOCATION]
MOVSXD     RDX,dword ptr [RSI + RDX*0x4]
ADD        RDX,RSI
JMP        FUN_jmp_RDX

There exists a FUN_jmp_* for every general purpose register, so there is a lot of code in this particular binary that doesn't get properly disassembled into a switch statement. Some of these jump thunks get entered via a CALL as well, and the target function just adjusts things accordingly. I can't come up with a great way to fix this in the general case. I can certainly patch the JMP sites with their appropriate register-based instruction, but the CALL sites will need some stack adjustment to decompile properly, I think. These thunks all initially disassemble as functions, so I guess something is prohibiting the decompiler from treating the thunk as part of the caller. I've yet to be able to trigger this optimization in a test binary, but if I can, I'll attach it.

I'm looking forward to the new Ghidra release; hopefully, we'll see this issue fixed.

Ghidra 11.0 version was tried, the problem is still not solved

I'm seeing a similar (related?) issue now with the kernel from Debian 12.5's release. I extracted the vmlinuz compressed kernel from the .iso, then ran it through vmlinux-to-elf and dropped it into Ghidra. Default analysis shows a ton (almost half?) functions call __fentry__, which is marked as no return, it just jumps to __x86_return_thunk. I've tried changing __fentry__ to remove no return attribute and set it as inline and re-analyzing, but this doesn't seem to have an effect.
Any suggestions for how to fix this? Do I need to make this this change prior to any analysis?

I'm seeing a similar (related?) issue now with the kernel from Debian 12.5's release. I extracted the vmlinuz compressed kernel from the .iso, then ran it through vmlinux-to-elf and dropped it into Ghidra. Default analysis shows a ton (almost half?) functions call __fentry__, which is marked as no return, it just jumps to __x86_return_thunk. I've tried changing __fentry__ to remove no return attribute and set it as inline and re-analyzing, but this doesn't seem to have an effect.
Any suggestions for how to fix this? Do I need to make this this change prior to any analysis?
Update: Re-importing the binary, and then navigating to __fentry__, disassembling, and marking as inline, as well as the __x86_return_thunk, and then running auto-analyisis seems to correct the issue. So it seems like there's something in the default analysis that's hitting the __fentry__ call early on and marking it as a no return thunk, which then propagates that to every function that calls it (40,000+).

I recommend you create a separate topic for this.


⚠ Samsung has degraded performance

In 44c4fb4, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 1888 ms

Resolved: Samsung performance has improved in b82352d.


setTime always be 0

Codecov Report

Merging #43 into master will decrease coverage by 0.26%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #43      +/-   ##
==========================================
- Coverage   78.57%   78.31%   -0.27%
==========================================
  Files          11       11
  Lines        1148     1148
==========================================
- Hits          902      899       -3
- Misses        180      183       +3
  Partials       66       66

Impacted Files
Coverage Δ

naming/client.go
71.9% <0%> (-0.78%)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update f112a9e...429adf4. Read the comment docs.


[Feature] - Allow branching of timelines.

I don't have the bandwidth for a PR currently.
But, I would like to get your thoughts on the idea.
:+1:

I really like the idea but I don't have the time for coding it. Any PR that supports that feature is welcomed :+1:


Bug: Adding hook with no 'id' throws

Example:
var myHook = {
  before(req) {
    console.log('running (before) of hook!');
  }
};

console.log('adding Marty hook');
Marty.HttpStateSource.addHook(myHook);
console.log('success!');

Results in the following:
adding Marty hook
(Exception) failed to post message Object {id: "c60c89846534da2d", action: Object, stores: Object} TypeError: Converting circular structure to JSON

But, changing the hook to:
var myHook = {
  id: 'MyHook',
  before(req) {
    console.log('running (before) of hook!');
  }
};

Works as expected:
adding Marty hook
success!

Odd, its expected behaviour to throw an error if the hook doesn't have an Id. Not sure why you're getting a different error though

I see the "hook must have an id" error when I run your code sample against the latest Marty. Maybe something else in your environment?

Closing for now, let me know if this pops up again.

Thanks guys. I think the cryptic exception was some weirdness related to the Marty DevTools extension that was hiding the real exception message.


Next/Previous links is not present in published KBE website

Hi @mhausenblas ,
The PR for Previous/next is merged but it seems the website is not updated yet.

Argh, yeah, thanks for the reminder. Need to rebuild the site ;)

OK, done and thanks again @budhrg!

Verified. Working fine now :+1:


D/FlutterActivityAndFragmentDelegate( 7926): No preferred FlutterEngine was provided. Creating a new FlutterEngine for this FlutterFragment.

I don't know why is this happening but due to this the app is starting with a black screen.
Below is the debug console log
Launching lib/main.dart on HD1901 in debug mode...
✓ Built build/app/outputs/apk/debug/app-debug.apk.
D/FlutterActivity( 7926): Using the launch theme as normal theme.
D/FlutterActivityAndFragmentDelegate( 7926): Setting up FlutterEngine.
D/FlutterActivityAndFragmentDelegate( 7926): No preferred FlutterEngine was provided. Creating a new FlutterEngine for this FlutterFragment.
D/FlutterActivityAndFragmentDelegate( 7926): Attaching FlutterEngine to the Activity that owns this Fragment.
W/FlutterView( 7926): Tried to send viewport metrics from Android to Flutter but this FlutterView was not attached to a FlutterEngine.
W/FlutterView( 7926): Tried to send viewport metrics from Android to Flutter but this FlutterView was not attached to a FlutterEngine.
D/FlutterView( 7926): Attaching to a FlutterEngine: io.flutter.embedding.engine.FlutterEngine@da259
D/FlutterActivityAndFragmentDelegate( 7926): Executing Dart entrypoint: main, and sending initial route: /

Hi  @bhavneet0812
can you please provide your flutter doctor -v and flutter run --verbose?
Also, to better address the issue, would be helpfulif you could post a minimal code sample to reproduce the problem
Thank you

flutter doctor -v
[✓] Flutter (Channel stable, v1.12.13+hotfix.8, on Mac OS X 10.15.3 19D76, locale en-GB)
• Flutter version 1.12.13+hotfix.8 at /Users/bhavneetsingh/Development/flutter
• Framework revision 0b8abb4724 (6 days ago), 2020-02-11 11:44:36 -0800
• Engine revision e1e6ced81d
• Dart version 2.7.0
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
• Android SDK at /Users/bhavneetsingh/Library/Android/sdk
• Android NDK location not configured (optional; useful for native profiling support)
• Platform android-29, build-tools 29.0.2
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 11.3.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 11.3.1, Build version 11C504
• CocoaPods version 1.8.4
[✓] Android Studio (version 3.5)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin version 40.0.2
• Dart plugin version 191.8423
• Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
[✓] VS Code (version 1.42.1)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.8.1
[✓] VS Code (version 1.41.1)
• VS Code at /Users/bhavneetsingh/Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.8.1
[✓] Connected device (4 available)
• Lenovo K33a42 • ca4bd028                             • android-arm   • Android 6.0.1 (API 23)
• HD1901        • f216efe6                             • android-arm64 • Android 10 (API 29)
• iPhone 5s     • 5D0A0073-57DB-4F05-814B-3FFC06194B66 • ios           •
com.apple.CoreSimulator.SimRuntime.iOS-11-4 (simulator)
• iPhone X      • F8E5D567-1190-488B-ADB2-AFBF983300F3 • ios           •
com.apple.CoreSimulator.SimRuntime.iOS-11-4 (simulator)
• No issues found!
flutter run --verbose
[  +27 ms] executing: [/Users/bhavneetsingh/Development/flutter/] git -c log.showSignature=false log -n 1
--pretty=format:%H
[  +46 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] 0b8abb4724aa590dd0f429683339b1e045a1594d
[        ] executing: [/Users/bhavneetsingh/Development/flutter/] git describe --match v*..
--first-parent --long --tags
[  +19 ms] Exit code 0 from: git describe --match v*.. --first-parent --long --tags
[        ] v1.12.13+hotfix.8-0-g0b8abb4724
[   +8 ms] executing: [/Users/bhavneetsingh/Development/flutter/] git rev-parse --abbrev-ref --symbolic
@{u}
[  +12 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/stable
[        ] executing: [/Users/bhavneetsingh/Development/flutter/] git ls-remote --get-url origin
[  +10 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[  +57 ms] executing: [/Users/bhavneetsingh/Development/flutter/] git rev-parse --abbrev-ref HEAD
[  +11 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] stable
[   +6 ms] executing: sw_vers -productName
[  +15 ms] Exit code 0 from: sw_vers -productName
[        ] Mac OS X
[        ] executing: sw_vers -productVersion
[  +15 ms] Exit code 0 from: sw_vers -productVersion
[        ] 10.15.3
[        ] executing: sw_vers -buildVersion
[  +15 ms] Exit code 0 from: sw_vers -buildVersion
[        ] 19D76
[  +28 ms] executing: /usr/bin/xcode-select --print-path
[   +7 ms] Exit code 0 from: /usr/bin/xcode-select --print-path
[        ] /Applications/Xcode.app/Contents/Developer
[   +1 ms] executing: /usr/bin/xcodebuild -version
[ +207 ms] Exit code 0 from: /usr/bin/xcodebuild -version
[   +2 ms] Xcode 11.3.1
Build version 11C504
[  +73 ms] executing: /Users/bhavneetsingh/Library/Android/sdk/platform-tools/adb devices -l
[   +8 ms] Exit code 0 from: /Users/bhavneetsingh/Library/Android/sdk/platform-tools/adb devices -l
[        ] List of devices attached
ca4bd028               device usb:337641472X product:karate model:Lenovo_K33a42 device:K33a42
transport_id:6
f216efe6               device usb:336592896X product:OnePlus7T model:HD1901 device:OnePlus7T
transport_id:7
[  +22 ms] executing:
/Users/bhavneetsingh/Development/flutter/bin/cache/artifacts/libimobiledevice/idevice_id -h
[  +55 ms] /usr/bin/xcrun simctl list --json devices
[ +147 ms] More than one device connected; please specify a device with the '-d ' flag, or use
'-d all' to
act on all devices.
[   +4 ms] /Users/bhavneetsingh/Library/Android/sdk/platform-tools/adb -s ca4bd028 shell getprop
[  +77 ms] ro.hardware = qcom
[   +2 ms] /Users/bhavneetsingh/Library/Android/sdk/platform-tools/adb -s f216efe6 shell getprop
[  +82 ms] ro.hardware = qcom
[   +5 ms] Lenovo K33a42 • ca4bd028                             • android-arm   • Android 6.0.1 (API 23)
[   +2 ms] HD1901        • f216efe6                             • android-arm64 • Android 10 (API 29)
[        ] iPhone 5s     • 5D0A0073-57DB-4F05-814B-3FFC06194B66 • ios           •
com.apple.CoreSimulator.SimRuntime.iOS-11-4 (simulator)
[        ] iPhone X      • F8E5D567-1190-488B-ADB2-AFBF983300F3 • ios           •
com.apple.CoreSimulator.SimRuntime.iOS-11-4 (simulator)
[  +13 ms] "flutter run" took 808ms.
#0      throwToolExit (package:flutter_tools/src/base/common.dart:28:3)
#1      RunCommand.validateCommand (package:flutter_tools/src/commands/run.dart:289:7)

#2      FlutterCommand.verifyThenRunCommand (package:flutter_tools/src/runner/flutter_command.dart:590:11)
#3      FlutterCommand.run.
(package:flutter_tools/src/runner/flutter_command.dart:515:33)

#4      AppContext.run. (package:flutter_tools/src/base/context.dart:146:29)
#5      _rootRun (dart:async/zone.dart:1126:13)
#6      _CustomZone.run (dart:async/zone.dart:1023:19)
#7      _runZoned (dart:async/zone.dart:1518:10)
#8      runZoned (dart:async/zone.dart:1465:12)
#9      AppContext.run (package:flutter_tools/src/base/context.dart:145:18)
#10     FlutterCommand.run (package:flutter_tools/src/runner/flutter_command.dart:505:20)
#11     CommandRunner.runCommand (package:args/command_runner.dart:197:27)
#12     FlutterCommandRunner.runCommand.
(package:flutter_tools/src/runner/flutter_command_runner.dart:413:21)

#13     AppContext.run. (package:flutter_tools/src/base/context.dart:146:29)
#14     _rootRun (dart:async/zone.dart:1126:13)
#15     _CustomZone.run (dart:async/zone.dart:1023:19)
#16     _runZoned (dart:async/zone.dart:1518:10)
#17     runZoned (dart:async/zone.dart:1465:12)
#18     AppContext.run (package:flutter_tools/src/base/context.dart:145:18)
#19     FlutterCommandRunner.runCommand
(package:flutter_tools/src/runner/flutter_command_runner.dart:364:19)
#20     CommandRunner.run. (package:args/command_runner.dart:112:25)
#21     new Future.sync (dart:async/future.dart:224:31)
#22     CommandRunner.run (package:args/command_runner.dart:112:14)
#23     FlutterCommandRunner.run (package:flutter_tools/src/runner/flutter_command_runner.dart:250:18)
#24     run.. (package:flutter_tools/runner.dart:63:22)
#25     _rootRun (dart:async/zone.dart:1126:13)
#26     _CustomZone.run (dart:async/zone.dart:1023:19)
#27     _runZoned (dart:async/zone.dart:1518:10)
#28     runZoned (dart:async/zone.dart:1502:12)
#29     run. (package:flutter_tools/runner.dart:61:18)

#30     AppContext.run. (package:flutter_tools/src/base/context.dart:146:29)
#31     _rootRun (dart:async/zone.dart:1126:13)
#32     _CustomZone.run (dart:async/zone.dart:1023:19)
#33     _runZoned (dart:async/zone.dart:1518:10)
#34     runZoned (dart:async/zone.dart:1465:12)
#35     AppContext.run (package:flutter_tools/src/base/context.dart:145:18)
#36     runInContext (package:flutter_tools/src/context_runner.dart:64:24)
#37     run (package:flutter_tools/runner.dart:50:10)
#38     main (package:flutter_tools/executable.dart:65:9)
#39     main
(file:///Users/bhavneetsingh/Development/flutter/packages/flutter_tools/bin/flutter_tools.dart:8:3)
#40     _startIsolate. (dart:isolate-patch/isolate_patch.dart:305:32)
#41     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:174:12)
Sample Code
This is occurring even in the stater project.

Hi @bhavneet0812
Is your case the same as https://github.com/flutter/flutter/issues/47024?
Do you experience this with android?
Have you tried to launch in release mode?

Hi @bhavneet0812
Is your case the same as #47024?
Do you experience this with android?
Have you tried to launch in release mode?

You are right.
It's not happening in the release mode.

This does not happen in the release mode but neither did it happen in the debug mode just a few days ago. I even tried opening old backups of my project and these exact same error are showing up in the Android Studio's console!
Anyone any suggestions about what might have happened?
is this an error at all?!

Even it fails in release mod
$ flutter run --release
Launching lib/main.dart on SM J600G in release mode...
Note: /usr/local/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider-1.6.5/android/src/main/java/io/flutter/plugins/pathprovider/PathProviderPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Running Gradle task 'assembleRelease'...
Running Gradle task 'assembleRelease'... Done                      72.9s
✓ Built build/app/outputs/apk/release/app-release.apk (9.5MB).
Installing build/app/outputs/apk/app.apk...                        21.6s

To quit, press "q".
W/FlutterEngine( 6696): Tried to automatically register plugins with FlutterEngine (io.flutter.embedding.engine.FlutterEngine@88c32aa) but could not find and invoke the GeneratedPluginRegistrant.

Probably this is proxy problems. Follow these instructions!
https://stackoverflow.com/questions/60466163/d-flutteractivityandfragmentdelegate29168-no-preferred-flutterengine-was-prov/61331375#61331375

I have the same issue but it solves after i use:
flutter clean
and then restart the project.
This solves my problem.

I have the same issue but it solves after i use:
flutter clean
and then restart the project.
This solves my problem.


feat: refactor and improve K8s sync provider

This PR
fixes #434
This is a refactoring and internal improvement for K8s ISync provider.
Improvements include,

Reduce K8s API load by utilizing Informer cache
Yet, provide a fallback if cache miss occurs (Note - we rely on K8s Informer for cache refill and consistency)
Informer now only watches a specific namespace (compared to *) - this is a potential performance improvement and a security improvement
Reduced informer handlers with extracted common logics
Unit tests where possible

I tested this in OFO locally (latest version) and it works as expected.

I left only minor suggestions to improve logging a bit. I see that parts of the code are not tested, in particular the one with K8s details. For that, I recommend having a look at the fake client (docs)

Thank you. I addressed the log and renamed related comments. Regarding testing, K8s backed logic. Even with a fake client, we still not to mock the shared informer interface as we have a fallback. I am not sure how worth these mocks are against real e2e tests which easily test most of the logic.

I agree with @thisthat that we probably need a bit more coverage here (I know that there was no tests here before, so that's not your fault). I think now is the time. If there's any way to mock the k8s data I think we should do some basics here. It's worth another day or so of effort I think.
Maybe @thisthat has some specific recommendations.
Besides that everything here looks good to me and I think this is an improvement.

K8s provides great fake clients that can be used to unit-test your informer logic.
I think a good starting point to see an example is this test file in Keptn: https://github.com/keptn/lifecycle-toolkit/blob/91e57cadba32fce6d873bc480408f90bcb8964d9/metrics-operator/cmd/metrics/adapter/provider/provider_test.go

@Kavindu-Dodan we can create a new issue for additional testing. I think at a minimum we should get the coverage diff here to 0% with some meaningful tests unless it's really impossible. This isn't a place where we can afford to lose coverage.

@Kavindu-Dodan we can create a new issue for additional testing. I think at a minimum we should get the coverage diff here to 0% with some meaningful tests unless it's really impossible. This isn't a place where we can afford to lose coverage.

It is not impossible. It's time to deliver. Soon there will be merged conflicts with upcoming PRs and given that we constantly change API contracts, the efforts can go wasted.
Besides, I introduced new tests and simply touched code with the refactoring, reducing complexity. Even with new tests, for some reason, we see a reduction in coverage. To be honest I do not know how this happened.

@Kavindu-Dodan we can create a new issue for additional testing. I think at a minimum we should get the coverage diff here to 0% with some meaningful tests unless it's really impossible. This isn't a place where we can afford to lose coverage.

It is not impossible. It's time to deliver. Soon there will be merged conflicts with upcoming PRs and given that we constantly change API contracts, the efforts can go wasted.
Besides, I introduced new tests and simply touched code with the refactoring, reducing complexity. Even with new tests, for some reason, we see a reduction in coverage. To be honest I do not know how this happened.

To prove my point, here is a PR with the change we need - https://github.com/open-feature/flagd/pull/451
This will work and since I am not refactoring, code coverage won't complain.

@thisthat @toddbaert  I added more tests however the coverage is below the previous value due to the reason I explained [1]
Please have another round of review :)
[1] https://github.com/open-feature/flagd/pull/443#issuecomment-1450710014

@Kavindu-Dodan @thisthat I created https://github.com/open-feature/flagd/issues/460 for testing.


MPI builds can fail over SEEK_SET/SEEK_CUR/etc conflict between stdio.h and C++ bindings

Original issue: https://charm.cs.illinois.edu/redmine/issues/549

In file included from /opt/intel//impi/<IP_ADDRESS>/intel64/include/mpi.h:1279:0,
                 from mpi-interoperate.h:9,
                 from mpi-interoperate.C:3:
/opt/intel//impi/<IP_ADDRESS>/intel64/include/mpicxx.h:95:2: error: #error "SEEK_SET is #defined but must not be for the C++ binding of MPI. Include mpi.h before stdio.h"
#error "SEEK_SET is #defined but must not be for the C++ binding of MPI. Include mpi.h before stdio.h"
  ^
/opt/intel//impi/<IP_ADDRESS>/intel64/include/mpicxx.h:99:2: error: #error "SEEK_CUR is #defined but must not be for the C++ binding of MPI. Include mpi.h before stdio.h"
#error "SEEK_CUR is #defined but must not be for the C++ binding of MPI. Include mpi.h before stdio.h"
  ^
/opt/intel//impi/<IP_ADDRESS>/intel64/include/mpicxx.h:104:2: error: #error "SEEK_END is #defined but must not be for the C++ binding of MPI. Include mpi.h before stdio.h"
#error "SEEK_END is #defined but must not be for the C++ binding of MPI. Include mpi.h before stdio.h"
  ^
Fatal Error by charmc in directory /tmp/rfvander/charm-6.5.1/mpi-linux-x86_64-ifort-mpicxx/tmp
   Command mpicxx -m64 -fPIC -I../bin/../include -D__CHARMC__=1 -I. -fno-stack-protector -c mpi-interoperate.C -o mpi-interoperate.o returned error code 1
charmc exiting...
gmake: *** [mpi-interoperate.o] Error 1

Original date: 2014-09-19 18:11:31

Anirudh asks via email:

How do I reproduce the build error in https://charm.cs.uiuc.edu/redmine/issues/549 ?
By MPI build are we referring to MPI code compiled with AMPI?

First, a quick note on our bug tracker usage: Please keep follow-up inquiries in Redmine, so that the problem-solving process can be as transparent as possible for other members of the lab, users reporting trouble, and anyone else interested in our development efforts. If something would involve private information, the 'Private notes' box can be checked.
The error in question can be reproduced by attempting to build the Charm++ RTS itself with the MPI network layer on an MPI implementation that exposes the (now deprecated) MPI C++ bindings. This is most often the case on MPICH and derivatives, such as Intel MPI. An example build command would look like
./build charm++ mpi-linux-x86_64

I believe we keep OpenMPI installed on the lab workstations. This would perhaps be easiest to reproduce and work out on a system with Intel's MPI installed, perhaps Taub/Golub or Stampede. You'll need to configure your environment with the right modules, according to their documentation (ask for help with this if needed).
The desired outcome of this issue is that we have an added check in our configure script that, when building for an MPI network layer, tests whether the MPI implementation exhibits this issue, and adds the flags
-DMPICH_IGNORE_CXX_SEEK -DMPICH_SKIP_MPICXX

accordingly.

Original author: Anonymous
Original date: 2014-10-03 15:57:55

Unable to reproduce the issue. Taub has two mpi versions(mvapich2 and openmpi). I tried it on hopper. The compilation went through(PrgEnv-intel and PrgEnv-gnu). I'm not sure about the mpi version hopper has. I don't find any information in the manuals.
I don't have an account on stampede. I was thinking of installing mpich on my workstation locally and see if the error appears.

Original author: Anonymous
Original date: 2014-10-03 19:53:05

Still unable to reproduce the issue.
build mpich using intel compilers on lab workstation finesse:
./configure --prefix=/dcsdata/home/anirudh/MPI/mpich/mpich-3.1.2/install CC=icc CXX=icpc --disable-fortran 2>&1 | tee c.txt
make 2>&1 | tee m.txt
make install 2>&1 | tee mi.txt
Added bin to PATH and lib to LD_LIBRARY_PATH
Build charm with the below commands. Both completed successfully
MPICXX=/dcsdata/home/anirudh/MPI/mpich/mpich-3.1.2/install/bin/mpicxx CXX=icpc ./build charm++ mpi-linux-x86_64 -j8
MPICXX=/dcsdata/home/anirudh/MPI/mpich/mpich-3.1.2/install/bin/mpicxx CXX=icpc ./build charm++ mpi-linux-x86_64 --basedir=/dcsdata/home/anirudh/MPI/mpich/mpich-3.1.2/install -j8

Original author: Anonymous
Original date: 2014-10-10 18:05:41

Reproduced the problem on stampede with Nikhil's help.
The issue is fixed by defining MPICH_IGNORE_CXX_SEEK (MPICH_SKIP_MPICXX not used) in the conv-common.h.
Should we change the configure script or can we just leave it at this?

Original date: 2014-10-20 22:24:48

I would lean toward changing the configure script, because that avoids the risk of negatively impacting builds that wouldn't have encountered this issue.
I think the test code would be something like this, compiled as C++:
#include <stdio.h>
#include <mpi.h>

int main (int argc, char** argv) {
  return 0;
}

Original date: 2014-11-11 22:12:02

Please push this fix for review in gerrit. I.e.
git push origin HEAD:refs/for/charm


:order option and previous_changes

I've been trying out closure_tree in a Rails 3.2.12 app, replacing a home-grown parent/child relationship.
The model in question has an after_commit hook that relies on the value of previous_changes.  When I switch over to closure_tree and use the :order option, previous_changes is empty when my after_commit hook is called.
I haven't had a chance to put together a small, reproducible test case, but the root cause is the reload call in NumericDeterministicOrdering::_ct_reorder_siblings.  reload causes both changes and previous_changes to be flushed and this happens before my after_commit callback has a chance to run.
I don't have a good sense of what it would take to fix this, sorry.

You could look in hierarchy_maintenance.rb for an example of change hooks that you could add. I've never used previous_changes, but you could save that in a new before_save that you add.


making script compatible with new changelog format

This is a hacky way to make this work with the new changelog format. Probably there is a nicer way to do it, I rather dislike the double if...

I'll merge this for now as I think it should work. I have a fix in the works to properly parse the file via an rst parser, but this works for now.


One location weather data showing twice on page

The page is currently reporting the weather for St. Petersburg twice.

It appears that the data for the Terra Ceia location is not being logged to the database. Perhaps a timeout error?

Steps to resolve:

Modify query to loop by location id to ensure last pull by location
Modify data logger to write null status if no data is returned or if timeout occurs

Commit ac867a256976426e775312414d8123cc2e901a75 resolved this issue on the front-end, by selecting the last record for each location. It could still be improved to indicate to the user when the data was last pulled, or if the data was not available.
For the second step to resolve, that should be addressed in the data-scraper project.
Closing this issue as complete, and to open a new one in the data scraper project.


Could not run flutter app on iOS after installing Firebase services

Bug report
Describe the bug
In the new version of Xcode (Xcode 12.0) after adding firebase services in my flutter app it writes that Xcode build is done and nothing happens.
Steps to reproduce
Steps to reproduce the behavior:

Create a flutter app.
Add firebase services for iOS to your flutter app (I added GoogleServices.plist, initialized pod with pod 'Firebase/Analytics', configured firebase in AppDelegate and run pod install).
Run the project.

Expected behavior
App is launching, wow.

Additional context
It worked fine until I added firebase services.
Could not launch my app from simulator even if I tap on it.

Also I have this issue by running pod install. Maybe resolving it will help
Click To Expand

[!] CocoaPods did not set the base configuration of your project because your project already has a custom config set. In order for CocoaPods integration to work at all, please either set the base configurations of the target `Runner` to `Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig` or include the `Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig` in your build configuration (`Flutter/Release.xcconfig`).

It's my first time installing firebase on iOS. So, maybe I'm doing something wrong?

Flutter doctor
Run flutter doctor and paste the output below:
Click To Expand
[✓] Flutter (Channel stable, 1.20.4, on Mac OS X 10.15.6 19G2021, locale ru-RU)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
[✓] Xcode - develop for iOS and macOS (Xcode 12.0)
[✓] Android Studio (version 4.0)
[✓] Connected device (1 available)

• No issues found!

Flutter dependencies
Run flutter pub deps -- --style=compact and paste the output below:
Click To Expand
dev dependencies:
- flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters charcode collection matcher meta source_span stream_channel string_scanner term_glyph typed_data]

transitive dependencies:
- async 2.4.2 [collection]
- boolean_selector 2.0.0 [source_span string_scanner]
- characters 1.0.0
- charcode 1.1.3
- clock 1.0.1 [meta]
- collection 1.14.13
- fake_async 1.1.0 [clock collection]
- matcher 0.12.8 [stack_trace]
- meta 1.1.8
- path 1.7.0
- sky_engine 0.0.99
- source_span 1.7.0 [charcode collection meta path term_glyph]
- stack_trace 1.9.5 [path]
- stream_channel 2.0.0 [async]
- string_scanner 1.0.5 [charcode meta source_span]
- term_glyph 1.1.0
- test_api 0.2.17 [async boolean_selector collection meta path source_span stack_trace stream_channel string_scanner term_glyph matcher]
- typed_data 1.2.0 [collection]
- vector_math 2.0.8

Which iOS version is your simulator using? I'm having a similar problem with my released iOS app. It launches with white screen in iOS 12

Which iOS version is your simulator using? I'm having a similar problem with my released iOS app. It launches with white screen in iOS 12

It uses the newest version of iOS (14.0)

Did you followed this step? https://firebase.flutter.dev/docs/overview#initializing-flutterfire

Did you follow this step? https://firebase.flutter.dev/docs/overview#initializing-flutterfire

I tried, but it doesn't work. This is my Podfile

# Uncomment the next line to define a global platform for your project
platform :ios, '9.0'

# Override Firebase SDK Version
$FirebaseSDKVersion = '6.30.0'

target 'Runner' do
  # Comment the next line if you don't want to use dynamic frameworks
  use_frameworks!

  # Pods for Runner
  pod 'FirebaseFirestore', :git => 'https://github.com/invertase/firestore-ios-sdk-frameworks.git', :tag => '6.26.0'

end

# add the Firebase pod for Google Analytics
pod 'Firebase/Analytics'
# add pods for any other desired Firebase products
# https://firebase.google.com/docs/ios/setup#available-pods

Maybe I'm doing something wrong?

Hi @TagidickTagidick
Can you try this solution and see if it works for you ?
Thanks.


Slack doesn't update until I manually refresh

Been using the former version of Station for some time on macOS. I'm a big fan. All good (save for memory usage!).
Following the recent announcement about that version being retired, I downloaded the newest version on GitHub.
I've tried to re-add my accounts with very limited success:

Slack doesn't appear to update with new messages received -- I have to manually refresh (Cmd+R on macOS) to see any new messages.

WhatsApp, Telegram & Discord do not display the QR code for me to scan with my phone to reconnect (I gather others have reported this bug separately)

Please fix, I'm lost without this app.
In the meantime, does anyone know what version I can downgrade to to get it all working again quickly?

I got the same issue, @jupman downgrading to Canary 0.19 works for me https://github.com/getstation/station-canary/releases

I got the same issue, @jupman downgrading to Canary 0.19 works for me https://github.com/getstation/station-canary/releases

Thank you, this works 100%. Really appreciate your feedback. As a non-technical user, I had no idea how to use GitHub!

+1
Would be nice to have this fixed this in the 2.x version

Duplicate #25
Fixed in 2.1.0


Mute / Unmute not working with the latest version

Successfully setup up the mobile option.  I can pretty do everything successfully except muting and unmuting.  I can see that the mute expiration get set properly, but the chat in the WhatsApp application is not muted.  "canMute" returns true.
Vice-versa, I muted a chat in the WhatsApp app, but unmuting using the script doesn't work.
Any advice?

Mute/Unmute works fine, but unfortunatly, if we mute messages on Web, then it will not mute on Mobile
and because this software running a browser in background with whatsapp web running in it, so Mute only happens on Web, not in mobile


Sorting problem when exporting data

How to reproduce issue:

Sort data with different order than initial setup.
Do the export operation.

Result:

Data in CSV is sorted by ID (descending).
The exported result only contains data from the first page.

Expected result:

Data in CSV is sorted properly.
The exported result contains data from all pages.

I can reproduce the sorting problem, not the pagination problem.


[fix] use updated go-misc version code

Draft pending updated go-misc.
Test Plan

[x] acceptance tests

[ ] …

References

Codecov Report

Merging #220 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #220   +/-   ##
=======================================
  Coverage   65.90%   65.90%
=======================================
  Files          50       50
  Lines        3693     3693
=======================================
  Hits         2434     2434
  Misses        933      933
  Partials      326      326

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 3d38a64...0ca2f77. Read the comment docs.


Idea to call the log methods from outside monobehaviour classes?

Love the script but not all my classes inherit from monobehavior, and i don't have access to logging there.
Any ideas how can i workaround this?

You can do this already - just use the static methods in UnityObjectLoggerExt


Slow

Too slow, when i open this it's starting hanging

Thanks for reaching out!
We require the template to be filled out on all new issues and pull requests so if you can open a new issue with the template filled out, that would be helpful for us. We do this so that we can be certain we have all the information we need to address your submission efficiently. This allows the maintainers to spend more time fixing bugs, implementing enhancements, and reviewing and merging pull requests.
Thanks for understanding and meeting us half way :grinning:


Fix issue in address_generator example.

The get_new_addresses method returns a dict and we were iterating over it's
keys.

jej oops (:  Thanks Ivo!


feat: add DuckDB dialect

Close #873
Add DuckDB dialect and support DuckDB's // operator.

Perhaps there is quite a lack of testing for dialects here.
I am not very experienced with this repository and DuckDB, so it would be great if someone could help me with this.

This is looking pretty good @eitsupi  --  it has a conflict that needs to be resolved and I think the test needs a little updating but otherwise it is ready to go

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

43 of 45 (95.56%)  changed or added relevant lines in 6 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.02%) to 86.193%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/dialect/duckdb.rs
5
6
83.33%

src/tokenizer.rs
2
3
66.67%

Totals

Change from base Build<PHONE_NUMBER>:
0.02%

Covered Lines:
14333

Relevant Lines:
16629

💛  - Coveralls


Favicons are loaded from wrong path on umami dashboard

Favicons are loaded from a relative path instead of the root, see code references below:
https://github.com/mikecao/umami/blob/7eb0ca8034374c69f50f2c25126bc866594d3bd1/pages/_app.js#L32-L36
https://github.com/mikecao/umami/blob/0b8336f10354e3c11c0146ef74155cd35fd9085e/components/layout/Layout.js#L11
Made a quick fix pull request #516

We need to take the basePath into account.

Something like this will work? (I am not so familiar with react, this is from what I saw used in other places in the project)
import { useRouter } from 'next/router';
...
const { basePath } = useRouter();
...
<link rel="apple-touch-icon" sizes="180x180" href="`${ basePath }`/apple-touch-icon.png" />
<link rel="icon" type="image/png" sizes="32x32" href="`${ basePath }`/favicon-32x32.png" />
<link rel="icon" type="image/png" sizes="16x16" href="`${ basePath }`/favicon-16x16.png" />
<link rel="manifest" href="`${ basePath }`/site.webmanifest" />
<link rel="mask-icon" href="`${ basePath }`/safari-pinned-tab.svg" color="#5bbad5" />

This should work:
// ...
import { useRouter } from 'next/router';
// ...

export default function Layout(/* ... */) {
  const { basePath } = useRouter();

  return (
    <>
      <Head>
        {/* ... */}
        <link rel="icon" href={`${basePath}/favicon.ico`} />
        {/* ... */}
      </Head>
    </>
 )
}

Can confirm that after prepending basePath like this, the issue no longer occurs.

@meirroth Can you update your PR #516 with the fix?

Sure!


Palette leakage

If you alter the palette and use darker colours (value 18 and under) the saved files get corrupted with colour leakage all over.

Hey @ericolito, thanks for reporting the issue.
Are you modifying a color, or adding a color?  Can you provide steps that show what you are doing?

Hey @ericolito, thanks for reporting the issue.
Are you modifying a color, or adding a color?  Can you provide steps that show what you are doing?

Hi @cwensley, thanks for getting back to me!
It doesn't seem to matter wheter I'm modifying or adding a new colour. The problem is easy to reproduce as it happens every time you turn the colour dark enough (i think the threshold is about value 19) - atleast when you use the colour as a background colour.
In this example i darkened the colour of the building in the background (to a value 12), saved the file as .ans and then reopened the file to find it looking like this: https://skapar.com/~hellbeard/eto.png

Hi @cwensley, thanks for getting back to me!
It doesn't seem to matter wheter I'm modifying or adding a new colour. The problem is easy to reproduce as it happens every time you turn the colour dark enough (i think the threshold is about value 19) - atleast when you use the colour as a background colour.
In this example i darkened the colour of the building in the background (to a value 12), saved the file as .ans and then reopened the file to find it looking like this: https://skapar.com/~hellbeard/eto.png

Hey @ericolito,
Great, thanks for the info!  Could you provide a sample .ans file that I can use to reproduce the issue?  It would be extremely helpful.

Hey @ericolito,
Great, thanks for the info!  Could you provide a sample .ans file that I can use to reproduce the issue?  It would be extremely helpful.

@cwensley
Here's the file that I used as an example. Let me know if I can do anything (besides coding) to help. :) https://skapar.com/~hellbeard/havana.ans

@cwensley
Here's the file that I used as an example. Let me know if I can do anything (besides coding) to help. :) https://skapar.com/~hellbeard/havana.ans

Ah, looks like this is already fixed.  I can replicate the issue with 3.2.1, but not the latest code.  Could you try the alpha release to see if it's fixed for you as well?

Ah, looks like this is already fixed.  I can replicate the issue with 3.2.1, but not the latest code.  Could you try the alpha release to see if it's fixed for you as well?

That totally did it, it's working now! Thanks a lot for the effort, I really appreciate it. On the other hand I've run into some minor problems with the gtk3 interface but I guess it's still a work in progress..

That totally did it, it's working now! Thanks a lot for the effort, I really appreciate it. On the other hand I've run into some minor problems with the gtk3 interface but I guess it's still a work in progress..

Sweet!  Glad it works for you.  I'm going through things and fixing as necessary but if you do find any issues it would be greatly helpful to report them.

Closing as fixed.


Uncaught ReferenceError: h is not defined

While migration somehow I need to add this
import { h } from 'preact';

to avoid Uncaught ReferenceError: h is not defined
Is it normal?
And also I need to manually add proptypes to avoid error after that too.
Not sure this is expected behavior.
You can find the code here.
And I can reproduce by just comment out
//import { h } from 'preact';

here
Thanks

@katopz for preact-compat, instead of h() we use preact-compat's createElement():
https://github.com/katopz/react-chartist-example/blob/webpack-preact-compat/.babelrc#L9
You can actually change that line to drop the pragma entirely, making it use React.createElement(), which is already aliased! 🌈

@developit Cool! It did the trick but why https://preactjs.com/guide/switching-to-preact suggest me to add this btw?
{
  "plugins": [
    ["transform-react-jsx", { "pragma": "h" }]
  ]
}

So it's required or not required then in case it already alias? Or maybe for other use case?
Thanks

Ah I see - yeah that guide is actually two separate options. If you do preact-compat, you don't need the alias.  I should make that clearer!

Na it's my bad! I just skip reading, blame my bad habit 💨  Thanks!

@developit should there be a note in the README? It tripped me up too. 😥

Happy to merge a PR for that if you have good wording to put around it.

Should we make it a little bit clearer on the README?
Adding a NOTE comment below the Babel way that If you are using webpack resolve alias don't need the transform with h?

Sure, would be happy to merge a clarification there.

Not sure if this is good practice, but adding this plugin to webpack config solve the issue:
new webpack.ProvidePlugin({
  h: ['preact', 'h'],
})

That way whenever webpack encounter a usage of h it will import it for you.
The solve the issue where linter would tell me "h" is imported without being used.


Add new charts to the gh-pages

See changes added in 1.8.1: https://github.com/novus/nvd3#changelog

done.


Fix type issues

Releases are broken because of broken types

https://github.com/tscircuit/pcb-viewer/commit/24c4a8bd3a65bcb6ddc1893fc4275d307c73d3a0


Fix initialization

Moved all the initialization to the init hook and made it non-async, because the hooks/wrappers/settings need to be registered before the canvas is drawn. This fixes the issue that the faction borders are not initially visible after login.
preloadTemplates(); doesn't seem to do anything, so I commented it out.

ty for the contribution


[FEAT] Optional invalidation of query cache after the mutation is successful for useUpdate hook

Is your feature request related to a problem? Please describe.
I am trying to implement autosave feature, but after every save, the data gets reloaded because of which the form get loaded with data. This makes the fields loose focus and there is a slight jump in the data as well. I would like to update the form in the background silently without any re-renders in the ui
Describe the solution you'd like
I think making the invalidation controllable with a flag should solve the issue. For all these autosave, I would set the invalidation to false, and for all the other use case can still invalidate and work as usual

Hey @mayank-meragi ,
I've created draft PR #1690 . You can follow the development through this PR

Hey @mayank-meragi ,
We've released 3.11.0. You can use like this;
useUpdate({
...
invalidates: false
});


[🐞] A for loop gets confused and number of items grows over time.

Which component is affected?
Qwik Runtime
Describe the bug
See Loom: https://www.loom.com/share/5e0f0e74a3d24908a1f33f6b54cf1c80
There is a loop that creates elements. That loop does not clean up properly after itself and leaves items behind. Over time these items accumulate. This is incorrect behavior.
Reproduction
https://stackblitz.com/edit/qwik-starter-ww2vcy
Steps to reproduce

Open: https://stackblitz.com/edit/qwik-starter-ww2vcy
Open the dev console (the StackBlitz may crash, just restart it)
With the mouse, hover over Solutions and then Developers (and then repeat many times over)
Notice that the console shows a number of divs which have this selector: '[builder-id="builder-762da1b5cff440dbb0094700482f6911"]' and that number is increasing as you go back and forth.

I have noticed that deleting starting at line 1325 this:
                              /**
                               * DELETING STARTING HERE: Fixes the issue
                               */
                              dangerouslySetInnerHTML: `
                                <style>
                                  .builder-image{
                                    display: flex;
                                    align-items: center;
                                    justify-content: center;
                                  }

                                  picture {
                                    display: flex;
                                    align-items: center;
                                    justify-content: center;
                                  }
                                </style>
                                <!-- Place this tag in your head or just before your close body tag. -->
                                <script async defer src="https://buttons.github.io/buttons.js"></script>
                                `,
                              /* TO HERE */

Fixes the issue. So the problem seems to be with dangerouslySetInnerHTML
Sorry I don't have smaller repor.
System Info
na

Additional Information
No response

I cant reproduce this in the stackblitz sent


narsil: init at 1.3.0-49-gc042b573a

Description of changes
Initializes NarSil, a roguelike that is a rewrite of Sil on top of modern Angband's codebase.

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

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

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/3310

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-already-reviewed/2617/1402


Updating Monoswap toekn list for Polygon.

@MoeNick commented on Wed Mar 15 2023
Related to
https://github.com/Giveth/impact-graph/issues/890
https://github.com/Giveth/impact-graph/issues/891
According to @aminlatifi :
Adding new token support needs these two steps:
1- Adding token information to the end of this list
https://github.com/Giveth/monoswap/blob/c862f54cda296d958167db97efac553abae61570/src/token/tokenLists.ts#L1055
2- Being sure - pair exists on uniswap v3 with 0.3% fee

@maryjaf it's on production but worth reviewing it to make sure about probable problems.


Bump to pipeline version v0.18.0

Bump to pipeline version v0.18.0
Fix permission issue based on new pipeline v0.18.0

/lgtm

/lgtm
/approve