text:
[New] Touchscreen buttons for C-lightning

The touchscreen functions are only implemented for LND so far.

A basic rewrite/refactor of the touchscreen is planned for v1.8.1 - so I will push this issue a bit further up. Its at least not critical, as the touchscreen just says LND is not running when pressing "Node" or "Invoice" buttons.

authors: openoms rootzoll

repo: rootzoll/raspiblitz


text:
LNbits LNURL withdraw not working with front end nginx proxy

I read many similar SSL/cert issues but none matched to my issue.
I want to access LNbits LNURL without VPS/VPN and any external vendors except my ISP.
I have configured DNS correctly and hostname matching LetsEncrypt cert is used in all the required locations.
I have tested following setups:
Working setup 1)
browser<->private IP-net<->raspiblizt-ngnix(ssl 5001 proxy_pass http 5000 to)<->lnbits
Optional Working setup 2)
browser<->internet<->router (with ssl 443 portforward to)<->raspiblizt-ngnix(ssl 5001 proxy_pass http 5000 to)<->lnbits
Optional Working setup 3)
browser<->internet<->router (with ssl 443 portforward to)<->raspiblitz nginx(ssl 443 proxy_pass https 5001 to)<->raspiblizt-ngnix(ssl 5001 proxy_pass http 5000 to)<->lnbits
Not working Setup 4) with separate host as front nginx host to proxy 443 to raspiblitz (and other hosts too) <- ISSUE
browser<->internet<->router (with ssl 443 portforward to)<->front nginx host (ssl 443 proxy_pass https 5001 to)<->raspiblizt-ngnix(ssl 5001 proxy_pass http 5000 to)<->lnbits
SETUP 1)
Please study following logs for working setup here:

Browser console debug shows no issues and networking seems ok.

SETUP 4)
Not working case logs:

LNbits shows an error:

Browser debug shows an error and networking has some issues:

Only case when I have issue is when nginx proxy is on another host!
My setup has many hosts on internal network to where I proxy_pass trafic from this front nginx. So it is mandatory to forward all 443 from internet to nginx outside of raspiblitz. Multible browsers were tested too and cookies / browser data was cleared also. All the other sites and their functionalities work. Event other parts of LNbits itself are ok. Also LND channels are fine and funds flow.
No avail. any ideas
ps. sorry about long issue and bad pictures.

issue cleared some samples from interwebs had escape "" for $ on these nginx lines. Like this
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
Removed "" as following
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
and now all good :)

@tlindi you closed this issue .. was there anything in there to be changed on the raspiblitz code side?

No need to make changes on raspiblitz - I had escape "" typo on my config.

source: gharchive/issue

authors: rootzoll tlindi

license: MIT

license_type: permissive

license_source: github-api


text:
add generate_tracing test

Signed-off-by: Evan Flynn evan.flynn@apex.ai

add ros2_tracing to the generate_trace test

closes #16

@christophebedard would love your input here to know if I am missing something in the launch configuration of Trace().
right now after running colcon test the tracing data is put into a tracing folder in the colcon_ws directory, here are the resulting profile directories and their sizes:

@christophebedard I wasnt sure if I needed to add these settings to properly configure the tracer. what exactly do these settings do?

@christophebedard I wasnt sure if I needed to add these settings to properly configure the tracer. what exactly do these settings do?

@flynneva they configure the LTTng userspace events, kernel events, and context fields that will be enabled for tracing. There are default values: https://gitlab.com/ros-tracing/ros2_tracing/-/blob/ad79dad92013e554b902bfcb460003038f14a8a3/tracetools_launch/tracetools_launch/action.py#L48-L71. It's always better to set them explicitly, but the default values should be fine here, at least for now.

source: gharchive/pull-request

authors: christophebedard flynneva

repo: ros-realtime/reference-system


text:
Lines display strangely

After I publish strip lines to rviz, the lines sometimes are blurry until the cursor slide over them. Is that a bug of rendering? There is a video in the zip. It's obviously at the beginning and end.
Looking forward to any replies. Thanks a lot.
slide over.zip

Could you provide a bag file and rviz config to easily reproduce this issue?
I never observed something like this.

I got the sample problem.
Please unzip the attached file and run the following commands:
rosbag play rviz_issue_1287.bag -k
rviz -d rviz_issue_1287.rviz

rviz_issue_1287.zip
LINE_STRIP marker is published and displayed in Rviz. In the "Move Camera" mode in Rviz, the marker disappears when changing the viewpoint. In the "Interact" mode, the marker disappears but it reappear if the mouse cursor goes close to the marker.

My environment: Ubuntu16.04.1 / ROS Kinetic. Rviz is built from source and its version is 1.13.12. I also install ogre from source to fix this issue and its version is 1.9.1.

Thanks for providing the bag file. I cannot reproduce this issue with a recent rviz (latest Melodic release).
Could you try to build the latest melodic-devel release and check with it?
Note, that you also need to build the melodic-devel branches of TF1 and TF2 within your workspace to do so.

I tried with the melodic-devel (the following catkin workspace) and the same problem still happens..
$ wstool info -t src
workspace: /home/mmurooka/ros/ws_rviz_melodic/src

 Localname S SCM Version (Spec) UID  (Spec)  URI  (Spec) [http(s)://...]
 --------- - --- -------------- -----------  ---------------------------
 rviz        git melodic-devel  2b31dc4be241 github.com/ros-visualization/rviz.git
 geometry2   git melodic-devel  9b8022c30304 github.com/ros/geometry2.git
 geometry    git melodic-devel  0712a2cb808c github.com/ros/geometry.git

Ok. Need to find a machine with older Xenial + Kinetic to test this tomorrow. But, I'm afraid the problem is related to your OpenGL lib. Could you please provide info on that (e.g. from rviz cmdline output).

provide info on that (e.g. from rviz cmdline output).

$ rviz
[ INFO] [1597888033.177879502]: rviz version 1.13.13
[ INFO] [1597888033.177934022]: compiled against Qt version 5.5.1
[ INFO] [1597888033.177951527]: compiled against OGRE version 1.9.0 (Ghadamon)
[ INFO] [1597888033.183421668]: Forcing OpenGl version 0.
[ INFO] [1597888033.901239841]: Stereo is NOT SUPPORTED
[ INFO] [1597888033.901307701]: OpenGl version: 4.6 (GLSL 4.6).

I still cannot reproduce the issue, even on a Xenial/Kinetic setup. I guess, we have to blame a different version of OpenGL libs.
See also https://github.com/ros-visualization/rviz/issues/1508 and try rviz --opengl 300.

I tried --opengl 300 and --opengl 210, and the issue was reproduced in all cases..

Sorry, then I don't have any more ideas.

Any progress on this? or workarounds? I have a simple visualization with LINE_LIST Markers and I can only see the lines in Rviz from some viewpoints. From other viewpoints the lines are not rendered, despite they should be visible. I'm using Noetic.

I wasn't able to reproduce the effect so far. I you can in Noetic, please provide a yaml or rosbag with a corresponding marker message to reproduce the issue.

Another weird effect I've just realised, This is another drawing with multiple lines.  The lines don't render from certain view angles, but if I pass the mouse pointer over the unrendered lines while having the "interact" or "focus camera" tools the l lines are then redrawn and I can see them. This doesn't happen with "move camera" or "select" tools, ie. even if I move the cursor over the unrendered lines the line don't get drawn. This suggest that it may be an issue with the drawing event logic.

I see the LINE_LIST markers are drawn as flat tapes!! for a moment I thought that was because I was only setting scale.x and ignoring scale.y and scale.z. But after setting these nothing changed. In fact in the documentation says: "Line lists also have some special handling for scale: only scale.x is used and it controls the width of the line segments.". With width here I interpreted thickness of the line (as if the line was a cylindrical tube), but it's literally width of the tape, with thickness being apparently zero. I think the disappearing lines issue is because the visibility of the tape is fine when looking orthogonal to the width of the tape but when looking from the side the tape has zero thickness and it disappears.
Could the LINE_LIST be reimplemented as a cylindrical tube rather than a flat (zero thickness) tape?

Maybe related #987

I have the same issue. on some view angles the line is not rendered.

I am able to reproduce the issue. All line strips essentially employ Ogre::BillboardChain to show a line that should always face the camera. However, this mechanism doesn't work for some reason. When moving the camera, the new camera pose isn't considered when drawing the BillboardChain.
In the Interact mode the camera pose is updated (and the line correctly displayed again) as soon as the mouse gets close to the line strip (into the bounding box?). This is related to the SelectionManager rendering the scene into a RenderTexture:
https://github.com/ros-visualization/rviz/blob/d8df909abe87899f66d1bf9471cfeb27395c4186/src/rviz/selection/selection_manager.cpp#L749

The bug stems from OGRE 1.9. Updating to OGRE 1.12 resolves the issue.

Trying to reproduce the issue once again, I first failed. Looks like the issue only occurs if the marker is not published regularly.
Or, phrased the other way around, a regular message updates the billboard line.

This issue was fixed in OGRE 13.4.1: https://github.com/OGRECave/ogre/pull/2493
It won't fix for ROS1 anymore, as we are stuck with OGRE 1.9.0.
One can work around the issue by regularly updating the line strip marker.

experiencing this issue as well with ros noetic

authors: Zander-yang jstmn martinakos mmurooka rhaschke tigelbri

repo: ros-visualization/rviz

license_source: bigquery


text:
neonavigation: 0.8.0-1 in 'kinetic/distribution.yaml' [bloom]

Increasing version of package(s) in repository neonavigation to 0.8.0-1:

upstream repository: https://github.com/at-wat/neonavigation.git
release repository: https://github.com/at-wat/neonavigation-release.git
distro file: kinetic/distribution.yaml
bloom version: 0.9.3
previous version for package: 0.7.0-1

costmap_cspace

No changes

joystick_interrupt

No changes

map_organizer

No changes

neonavigation

No changes

neonavigation_common

No changes

neonavigation_launch

No changes

obj_to_pointcloud

No changes

planner_cspace
* planner_cspace: replan immediately when path is blocked by new obstacles (#446 <https://github.com/at-wat/neonavigation/issues/446>)
* Add message package version constraints (#443 <https://github.com/at-wat/neonavigation/issues/443>)
* Contributors: Atsushi Watanabe, Naotaka Hatao

safety_limiter

No changes

track_odometry

No changes

trajectory_tracker
* Add message package version constraints (#443 <https://github.com/at-wat/neonavigation/issues/443>)
* trajectory_tracker: check path timestamps in tests (#441 <https://github.com/at-wat/neonavigation/issues/441>)
* trajectory_tracker: add path header to TrajectoryTrackerStatus (#439 <https://github.com/at-wat/neonavigation/issues/439>)
* Contributors: Atsushi Watanabe, Naotaka Hatao

Holding for sync

@tfoote hi, this change is better to be synchronized with neonavigation_msgs 0.8.0-1 which has been merged yesterday https://github.com/ros/rosdistro/pull/23932.
Is it possible to revert https://github.com/ros/rosdistro/pull/23932 or merge this PR on this sync?

authors: at-wat tfoote

repo: ros/rosdistro


text:
nixos: Add some missing packages

Adds missing nixos keys for libxmlrpc-c++, pugixml-dev, spirv-headers and spirv-tools
Links to Distribution Packages

NixOS/nixpkgs: https://search.nixos.org/packages

https://search.nixos.org/packages?channel=21.05&from=0&size=50&sort=relevance&type=packages&query=xmlrpc_c
https://search.nixos.org/packages?channel=21.05&show=pugixml&from=0&size=50&sort=relevance&type=packages&query=pugixml
https://search.nixos.org/packages?channel=21.05&show=spirv-headers&from=0&size=50&sort=relevance&type=packages&query=spirv-headers
https://search.nixos.org/packages?channel=21.05&show=spirv-headers&from=0&size=50&sort=relevance&type=packages&query=spirv-tools

Checks

[ ] All packages have a declared license in the package.xml
[ ] This repository has a LICENSE file
[X] This package is expected to build on the submitted rosdistro

please provide links to the packages being added, e.g.: https://search.nixos.org/packages?channel=21.05&show=xmlrpc_c&from=0&size=50&sort=relevance&type=packages&query=xmlrpc_c.
The pull request template has a section for that https://github.com/ros/rosdistro/blob/master/.github/pull_request_template.md#links-to-distribution-packages.
Thanks!

Hopefully that's what you are looking for.

Hopefully that's what you are looking for.

Yes, thanks for adding that!

@kjeremy could you update this branch (i.e. merge with origin/master)?
The nosetests are failing because of an unrelated reason (repository deleted branch after updating rosdep https://github.com/ros/rosdistro/pull/30609).

Why is this still failing?

Why is this still failing?

Now it's hitting #29964, which I'm hoping to resolve this week. The workaround is to merge the master branch back into your source branch. Normally I just do it for you, but you didn't enable maintainer pushes in this PR, so you'll need to do it yourself.

Patch LGTM and CI's green. Thanks for your contribution @kjeremy.

authors: cottsay hidmic ivanpauno kjeremy


text:
Error locating graphviz in OSX binary installation

Following the OSX binary installation page, the following command under "install rqt dependencies" is failing:
python3 -m pip install pygraphviz pydot

Looks like pygraphviz is unable to find the graphviz, previously installed with brew install graphviz.

Collecting pygraphviz
  Using cached https://files.pythonhosted.org/packages/7e/b1/d6d849ddaf6f11036f9980d433f383d4c13d1ebcfc3cd09bc845bda7e433/pygraphviz-1.5.zip
Building wheels for collected packages: pygraphviz
  Building wheel for pygraphviz (setup.py) ... error
  Complete output from command /usr/local/opt/python/bin/python3.7 -u -c "import setuptools, tokenize;__file__='/private/var/folders/tl/vh0p3k113bx20dnv50s4pv3h0000gn/T/pip-install-i_qa55z_/pygraphviz/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /private/var/folders/tl/vh0p3k113bx20dnv50s4pv3h0000gn/T/pip-wheel-5wd2cnve --python-tag cp37:
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-10.13-x86_64-3.7
  creating build/lib.macosx-10.13-x86_64-3.7/pygraphviz
  copying pygraphviz/release.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz
  copying pygraphviz/version.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz
  copying pygraphviz/graphviz.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz
  copying pygraphviz/__init__.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz
  copying pygraphviz/agraph.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz
  creating build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/test_setup.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/test_unicode.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/test_readwrite.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/test_string.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/__init__.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/test_html.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/test_node_attributes.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/test.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/test_drawing.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/test_subgraph.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/test_edge_attributes.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/test_clear.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/test_layout.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/test_attribute_defaults.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/test_graph.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  copying pygraphviz/tests/test_attributes.py -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz/tests
  running egg_info
  writing pygraphviz.egg-info/PKG-INFO
  writing dependency_links to pygraphviz.egg-info/dependency_links.txt
  writing top-level names to pygraphviz.egg-info/top_level.txt
  reading manifest file 'pygraphviz.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  warning: no files found matching '*.png' under directory 'doc'
  warning: no files found matching '*.html' under directory 'doc'
  warning: no files found matching '*.txt' under directory 'doc'
  warning: no files found matching '*.css' under directory 'doc'
  warning: no previously-included files matching '*~' found anywhere in distribution
  warning: no previously-included files matching '*.pyc' found anywhere in distribution
  warning: no previously-included files matching '.svn' found anywhere in distribution
  no previously-included directories found matching 'doc/build'
  writing manifest file 'pygraphviz.egg-info/SOURCES.txt'
  copying pygraphviz/graphviz.i -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz
  copying pygraphviz/graphviz_wrap.c -> build/lib.macosx-10.13-x86_64-3.7/pygraphviz
  running build_ext
  building 'pygraphviz._graphviz' extension
  creating build/temp.macosx-10.13-x86_64-3.7
  creating build/temp.macosx-10.13-x86_64-3.7/pygraphviz
  clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers -I/usr/local/include -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include -I/usr/local/Cellar/python/3.7.3/Frameworks/Python.framework/Versions/3.7/include/python3.7m -c pygraphviz/graphviz_wrap.c -o build/temp.macosx-10.13-x86_64-3.7/pygraphviz/graphviz_wrap.o
  pygraphviz/graphviz_wrap.c:3354:12: warning: incompatible pointer to integer conversion returning 'Agsym_t *' (aka 'struct Agsym_s *') from a function with result type 'int' [-Wint-conversion]
      return agattr(g, kind, name, val);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~
  1 warning generated.
  clang -bundle -undefined dynamic_lookup build/temp.macosx-10.13-x86_64-3.7/pygraphviz/graphviz_wrap.o -L/usr/local/lib -L/usr/local/opt/openssl/lib -L/usr/local/opt/sqlite/lib -lcdt -lcgraph -o build/lib.macosx-10.13-x86_64-3.7/pygraphviz/_graphviz.cpython-37m-darwin.so
  installing to build/bdist.macosx-10.13-x86_64/wheel
  running install
  Trying dpkg
  Failed to find dpkg
  Trying pkg-config
  Failed to find pkg-config
  Trying dotneato-config
  Failed to find dotneato-config
  Failed to find dotneato-config
Your Graphviz installation could not be found.
      1) You don't have Graphviz installed:
         Install Graphviz (http://graphviz.org)

      2) Your Graphviz package might incomplete.
         Install the binary development subpackage (e.g. libgraphviz-dev or similar.)

      3) You are using Windows
         There are no PyGraphviz binary packages for Windows but you might be
         able to build it from this source.  See
         http://networkx.lanl.gov/pygraphviz/reference/faq.html

      If you think your installation is correct you will need to manually
      provide path to graphviz include and library. For example:

      pip install pygraphviz --install-option="--include-path=/usr/include/graphviz" --install-option="--library-path=/usr/lib/graphviz/"

      The current setting of library_dirs and include_dirs is:

library_dirs=None
include_dirs=None
error: Error locating graphviz.

Failed building wheel for pygraphviz
Running setup.py clean for pygraphviz
Failed to build pygraphviz
Installing collected packages: pygraphviz
Running setup.py install for pygraphviz ... error
Complete output from command /usr/local/opt/python/bin/python3.7 -u -c "import setuptools, tokenize;file='/private/var/folders/tl/vh0p3k113bx20dnv50s4pv3h0000gn/T/pip-install-i_qa55z_/pygraphviz/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record /private/var/folders/tl/vh0p3k113bx20dnv50s4pv3h0000gn/T/pip-record-6rau2afj/install-record.txt --single-version-externally-managed --compile:
running install
Trying dpkg
Failed to find dpkg
Trying pkg-config
Failed to find pkg-config
Trying dotneato-config
Failed to find dotneato-config
Failed to find dotneato-config
Your Graphviz installation could not be found.

        1) You don't have Graphviz installed:
           Install Graphviz (http://graphviz.org)

        2) Your Graphviz package might incomplete.
           Install the binary development subpackage (e.g. libgraphviz-dev or similar.)

        3) You are using Windows
           There are no PyGraphviz binary packages for Windows but you might be
           able to build it from this source.  See
           http://networkx.lanl.gov/pygraphviz/reference/faq.html

        If you think your installation is correct you will need to manually
        provide path to graphviz include and library. For example:

        pip install pygraphviz --install-option="--include-path=/usr/include/graphviz" --install-option="--library-path=/usr/lib/graphviz/"

        The current setting of library_dirs and include_dirs is:
library_dirs=None
include_dirs=None

error: Error locating graphviz.

----------------------------------------

Command "/usr/local/opt/python/bin/python3.7 -u -c "import setuptools, tokenize;file='/private/var/folders/tl/vh0p3k113bx20dnv50s4pv3h0000gn/T/pip-install-i_qa55z_/pygraphviz/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record /private/var/folders/tl/vh0p3k113bx20dnv50s4pv3h0000gn/T/pip-record-6rau2afj/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /private/var/folders/tl/vh0p3k113bx20dnv50s4pv3h0000gn/T/pip-install-i_qa55z_/pygraphviz/

I'm using High Sierra.

After some testing, it would appear that we don't actually need pygraphviz or pydot.


text:
Fallback key for ewww (and wpc)

Keys can expire, so it could be practical to be able to provide an extra api key for the ewww converter
I'm aware that you can achieve the same by adding two instances of the "ewww" converter. However, in some circumstances, it will be more practical with the extra field. In this case, I'm creating an admin for the Wordpress plugin. In order to make fallback possible, I have created "add converter" and "remove converter" functionality. This was a bit tedious to create (handling multiple instances of the same converter in a format that can be written into .htaccess). Also, I'm now realizing that the interface will be more intuitive if the list is already populated with all converters available, and users can just reorder and disable. I could of course put in two ewww converters in that list (and two wpc converters), but it would be more user friendly to simply have the fallback key as part of the converter. Also, it will simplify the coding (and thus also the coding of admin interfaces for other CMS'es).

Also, it doesn't promote wpc and ewww, if they are not on the list initially. But these should be promoted, because they produce better quality than imagick and gd

Alternatively, we could make WebPConvert could support groups.
For example, a new "group" converter could be created, which acts much like WebPConvert::convert - that is, it takes a list of converters.

Or...
As another alternative, we could add a new generic "use-fallbacks" option, which works on all converters.. When this option is set, WebPConvert::convert will try the fallback, if the ordinary settings doesn't work. The options for the fallback will have "-2" appended to their option name.
Usage:
WebPConvert::convert($source, $destination, array(
    'converters' => array(
        array(
            'converter' => 'ewww',
            'options' => array(
                'use-fallbacks' => true,
                'key' => 'xxx',
                'key-2' => 'yyy'
            ),
        ),
        array(
            'converter' => 'wpc',
            'options' => array(
                'use-fallbacks' => true,
                'url' => 'http://example.com/wpc.php',
                'secret' => 'my-cat-is-brown',
                'url-2' => 'http://example2.com/wpc.php',
                'secret-2' => 'my-cat-is-sad',
            ),
        ),
    );
)

Actually, the 'use-fallbacks' would not even be needed. WebPConvert could detect if fallback is provided, by checking if at least one of the options ends with '-2'.

Or...
We could create a helper function, which transforms a converter array like above into a converter array, with a fallback converter added

Function for transforming converter array like above into an ordinary converter array, which is understood by WebPConvert:

function transformFallbackOptions($converters) {
    foreach ($converters as $i => &$converter) {
        $duplicateConverter = false;
        foreach ($converter['options'] as $optionName => $optionValue) {
            if (substr($optionName, -2) === '-2') {
                $duplicateConverter = true;
                break;
            }
        }
        if ($duplicateConverter) {
            $options2 = [];
            foreach ($converter['options'] as $optionName => $optionValue) {
                if (substr($optionName, -2) === '-2') {
                    $options2[substr($optionName, 0, -2)] = $optionValue;
                    unset($converter['options'][$optionName]);
                }
            }
            array_splice($converters, $i+1, 0, [['converter' => $converter['converter'], 'options' => $options2]]);
        }
        //echo $converter;
    }
    return $converters;
}

$converters =  array(
    array(
        'converter' => 'ewww',
        'options' => array(
            'key' => 'xxx',
            'key-2' => 'yyy'
        ),
    ),
    array(
        'converter' => 'wpc',
        'options' => array(
            'url' => 'http://example.com/wpc.php',
            'secret' => 'my-cat-is-brown',
            'url-2' => 'http://example2.com/wpc.php',
            'secret-2' => 'my-cat-is-sad',
        ),
    ),
);

$converters = transformFallbackOptions($converters);
echo '<pre>' . print_r($converters, true) . '</pre>';

Outputs:
Array
(
    [0] => Array
        (
            [converter] => ewww
            [options] => Array
                (
                    [key] => xxx
                )

        )

    [1] => Array
        (
            [converter] => ewww
            [options] => Array
                (
                    [key] => yyy
                )

        )

    [2] => Array
        (
            [converter] => wpc
            [options] => Array
                (
                    [url] => http://example.com/wpc.php
                    [secret] => my-cat-is-brown
                )

        )

    [3] => Array
        (
            [converter] => wpc
            [options] => Array
                (
                    [url] => http://example2.com/wpc.php
                    [secret] => my-cat-is-sad
                )

        )

)

Next question is where to put that function.
It will be handy when options are passed in the URL. So WebPOnDemand should support it. However, WebPOnDemand may not be the only library, which could use the functionality. So perhaps, it could be placed in WebPConvert, in the helper class. But I don't want to clutter WebPConvert uneccesarily.

The method above, for transform options with '-2' postfix into new converters has been put into WebPOnDemand - as a private function, transformFallbackOptions()

repo: rosell-dk/webp-convert


text:
Updating to the latest top of trunk

Updating to the latest top of trunk

Updating to the latest top of trunk


text:
Add a attempt select event

Some times we'd like to have a check before really select a tab, for example, we have a user info tab, after user click on it, if there's a logged in user, just select the tab, otherwise it's not allowed to select that tab, show a login page may be more proper.
So I add this onAttemptSelectMenuTab interface, we can do that kind of check there, return true if the tab is selectable, false if it's not.
Hope this helps.

@KyleXie This functionality was just added to the master branch today, there was another PR someone did to solve the same problem. In the next release you will be able to setTabSelectionInterceptor and if you return true it will not switch tabs

Thanks very much.

authors: KyleXie yombunker

repo: roughike/BottomBar


text:
How Can I Upload Files By Using Restful Api

In my project，i wanna use this component to upload files. i see this component need a url ,but i wanna pass data to server,because server using restful api，how can i do this？

Hi @huangche007
This currently isn't available, the only option is to pass a url, however v3 of this component is currently in the works and hopefully this functionality will be available.

@rowanwins Thanks a lot , I try it

@huangche007 I'm using REST API for the same scenario you mentioned. Is there anything you tried, so I can help you to make it working?

@vrajroham I have moved my post from #205 to here, to keep posts about topic in one place.
In my scenario i have an app with authorization, user needs to login to have access to application tools, my problem with vue-dropzone is that i can't (or i don't know how) to get response status during upload a file, i need to get for example 401 status to logout user if user session ended.
All my actions in app are using Axios (with Authorization inside interceptors), and there i can catch error with proper status, but not in case with vue-dropzpne where uploadUrl is a simple string url.
One option which do the job is add a hook to AJAX request (https://stackoverflow.com/a/5202999/1816520) but i'm looking for cleaner solution.

ok it was trivial, vdropzone-error provides xhr parameter, which exactly do what i need.
I don't know why i did't seen it before, maybe documentation changed last time, anyway vdropzone-error(xhr) do the job.

repo: rowanwins/vue-dropzone

license: mit


text:
Ability to prioritize function parameters and showing them on entering (

Is it possible to:

Have an option to prioritize function parameters.
Show function parameters when user enters (.
For example when entering serializers.SerializerMethodField( (python, rest framework) would be great to show method_field as first completion suggestion and when entering serializers.SerializerMethodField(me would be great to have method_field as first suggestion (currently for me it's map then max, etc, method_field is 6th)

Have an option to prioritize function parameters.

I guess you want custom sorting of the python completion items.
A completion source can use its own sort algorithm with the sort option set to 0 (it's currently undocumented behavior).

Show function parameters when user enters (.
For example when entering serializers.SerializerMethodField( (python, rest framework) would be great to show method_field as first completion suggestion and when entering serializers.SerializerMethodField(me would be great to have method_field as first suggestion (currently for me it's map then max, etc, method_field is 6th)

ncm's python completion is based on jedi library. According to the documentation, it doesn't have this feature.
However, it seems possible  to implement it, as the completion results returned by jedi has information about the type. To be specific, it's Completion.BaseDefinition.type
http://jedi.readthedocs.io/en/latest/_modules/jedi/api/classes.html#Completion.
It is not really attractive to me so I have no plan to support it.

OK, maybe I can make a PR if it attracts myself 😄

authors: roxma sassanh

repo: roxma/nvim-completion-manager


text:
Add "shortest path to closest point"

Hi there,
Thanks for your very nice library! It is very easy to use, although I modified Grid to use my underlying data structure directly.
I was wondering if you could add a version (e.g., GetPathToClosest() or an option to GetPath) that would return a path to the closest point to the destination, if the destination itself could not be reached, please. This would be useful, for example, when using it for pathfinding for monsters who are extremely numerous and are "mobbing" the player, assuming of course that only one monster can be in a cell and hence would BlockCell their locations.
The shortest path, if multiple end up equidistant, would be preferred, of course.
(Yes, I know a non-infinite cell cost could be used as well.)
Thanks,
Doug

Hey Doug,
Great to hear that you're using the library. I think this is a good feature to add. I think the logic will be quite different than from the normal A* path finding so I will have to think about the implementation. But we can probably do something with keeping track of the path that got the closest 'as the crow flies' distance to the desired location.  But there is a problem:
At the moment there is no distinction between a path blocked by an immovable object, or by an object that might move out of the way. So we could end up with a path that leads to a wall, meaning the agent will get near the object it desires to be, but even after fighting cannot reach it.

Posting this here instead of on #14
The general idea of 'best' path, from what I can tell, is taking the node that had the lowest H score in the case of no full path found. I just made some changes on my end to test this out and I think it works.

In Grid.cs, "GetPath" becomes:

public Position[] GetPath(Position start, Position end, Offset[] movementPattern, int iterationLimit, out bool fullPathNotFound)
{
        var current = PathFinder.FindPath(this, start, end, movementPattern, iterationLimit, out fullPathNotFound);
        [...]
}

In Pathfinder.cs "FindPath" method becomes:

public static List<Position> FindPath(Grid grid, Position start, Position end, Offset[] movementPattern, int iterationLimit, out bool fullPathNotFound)
{
            ClearStepList();

            fullPathNotFound = false;

            if (start == end)
            {
                return new List<Position> { start };
            }

            var head = new MinHeapNode(start, ManhattanDistance(start, end));
            MinHeapNode lowestHNode = head;
            var open = new MinHeap();
            open.Push(head);

            var costSoFar = new float[grid.DimX * grid.DimY];
            var cameFrom = new Position[grid.DimX * grid.DimY];

            while (open.HasNext() && iterationLimit > 0)
            {
                // Get the best candidate
                var currentNode = open.Pop();
                var current = currentNode.Position;
                MessageCurrent(current, PartiallyReconstructPath(grid, start, current, cameFrom));
                if (currentNode.ExpectedCost < lowestHNode.ExpectedCost)
                    lowestHNode = currentNode;
                if (current == end)
                {
                    return ReconstructPath(grid, start, end, cameFrom);
                }

                Step(grid, open, cameFrom, costSoFar, movementPattern, current, end);

                MessageClose(current);

                --iterationLimit;
            }

            fullPathNotFound = true;
            return ReconstructPath(grid, start, lowestHNode.Position, cameFrom);

            //return null;
        }

Also in my project, if the path kept coming back with "fullPathNotFound==true" (ie 2 in a row), then I would tell the unit to do something else, since obviously it can't make it to whatever it is trying to.

Hey cclog, Thanks for this. I think its a great idea to implement it like something like this. Its gonna take me a few weeks to get back to this issue (very busy weeks here, I'm helping with the organisation of a conference). So I wanted to add this comment here to show its not forgotten :).

I've thought about this more and more and I think every game has a different idea of "shortest to closest point", like what the closest point is (a closed door 10 meters away or an impenetrable wall 1 meter from the objective). For open areas that are congested with enemies its more clear. So I'm still not entirely sure what to do with this.
Maybe I can come up with an idea on how to give developers the tools to measure different types of closest points, and then let them plot a path there?

Hi Roy,
This is an interesting idea. However, perhaps it would be best to hear from other users of your library to discern whether and how they might prefer this, rather than just taking one person's opinion.
I "solved" the problem "for now" by making nothing "impassible" (infinite value) but making game-impassible things very high path cost (like closed doors, other mobile objects) and letting the pathing algo do its thing and then not allowing the path to be followed at the appropriate point.
Cheers!

authors: LispEngineer cclogg roy-t

repo: roy-t/AStar


text:
订阅消息data结构体

订阅消息的data是不是忘记从v2版本带过来了？要求类型是string，我咋转换都不行，没办法把v2的 SubscribeMessageData 带过来了，是不是请求的时候会做一次 json导致的 string处理异常？
因为如果传string 结构怎么滴都不对
如果是string就是这样

下面是v2版本的

我的错 改为 NewSubscribeMessage 就好了 我用的老方法

好的👌

authors: hxnets royalrick

repo: royalrick/weapp


text:
Implemented dim analysis function

This function guesses whether the dims of an array are spatio-tempora, bacth or channel.

Thank you for the PR @royerloic ! I will test it in detail and get it merged soon.

Just pushed some changes, might help...

The code is much slower than before, but most likely more accurate.
Perhaps it needs a bit more work.

authors: AhmetCanSolak royerloic

repo: royerlab/aydin


text:
Actualizar _config.yml

Se agregar usuario de Spotify.
Se modifica el usuario de Disqus

listo, se mezclo el cambio.


text:
SIze of Xavier's left-hand window

Today it extends to the bottom of the screen. After activation of the horisontal scroll bar, one can not explode the last dimension/hierarchy!

Hans, I tried on chrome, IE and firefox but I can't seem to reproduce this. Can you send me a screenshot to show me how it looks on your side?

Roland,
at least this happens on my laptop when accessing the demo sample.
please look for
http://xavier.collogia.de/XavierDeutsch/, expand the years and move the
divider to the left until the scrollbar on the bottom appears. Now
"Stationen" is invisible and cannot be used.
It is now necessary to move the divider to the right until the scrollbar
diappears.
Hans Kristian
[image: Inline-Bild 1]
2016-03-19 12:18 GMT+01:00 Roland notifications@github.com:

Reopened #12 https://github.com/rpbouman/xavier/issues/12.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/rpbouman/xavier/issues/12#event-595816664

Ok - I have found an issue that is kinda like this. I'm experiencing this when the tooltip extends beyond the width of the treeview. I have to think for a bit about a solution.

my unsolved problem with combchart is similar
whatever happens with the query boxes is not influencing the top of any
elements below.
both horizontal and vert separators are in fact overlapping.
similarities?
Hans Kristian
Am 05.04.2016 22:22 schrieb "Roland" notifications@github.com:

Ok - I have found an issue that is kinda like this. I'm experiencing this
when the tooltip extends beyond the width of the treeview. I have to think
for a bit about a solution.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/rpbouman/xavier/issues/12#issuecomment-205974185

Hi rpbouman/xavier,
I'd like to add you to my professional network on LinkedIn.

Hans Kristian

Confirm that you know Hans Kristian: https://www.linkedin.com/comm/start/accept-invitation?sharedKey=lwVhscxh&invitationId=6194581010781401088&trk=eml-guest-invite-cta&trkEmail=eml-invite_guest-null-2-null-null-0~iuha2dvz~wx
You received an invitation to connect. LinkedIn will use your email address to make suggestions to our members in features like People You May Know. Unsubscribe here: https://www.linkedin.com/e/v2?e=0-iuha2dvz-wx&t=lun&midToken=AQFmrFVhGEd36Q&ek=invite_guest&loid=AQHZZUEmzABY7gAAAVfeS1GOB5V89ZfMfA51OBizO3rgDNYzRyS6EejWpfcqBXv2GSgGZj8SVCnLjsksGT-gfHGtYZl_4MfRT7FRAPbvq-EVNNCuhEehLviFPe7NeaaTlpLl-b1QG5m8UJ5xGJsh_Ju9uarFsyKFzDGix16O16w8BcZPTJFuPzhRgB0m9I7HtyTC&eid=0-iuha2dvz-wx
This email was sent to reply@reply.github.com.
If you need assistance or have questions, please contact LinkedIn Customer Service: https://www.linkedin.com/e/v2?e=0-iuha2dvz-wx&a=customerServiceUrl&ek=invite_guest
© 2016 LinkedIn Corporation, 2029 Stierlin Court, Mountain View CA 94043. LinkedIn and the LinkedIn logo are registered trademarks of LinkedIn.

Hi rpbouman/xavier,
I'd like to add you to my professional network on LinkedIn.

Hans Kristian

Confirm that you know Hans Kristian: https://www.linkedin.com/comm/start/accept-invitation?sharedKey=HwqKE4Jo&invitationId=6194581010521350144&trk=eml-guest-invite-cta&trkEmail=eml-invite_guest-null-2-null-null-0~iuha2ql9~rc
You received an invitation to connect. LinkedIn will use your email address to make suggestions to our members in features like People You May Know. Unsubscribe here: https://www.linkedin.com/e/v2?e=0-iuha2ql9-rc&t=lun&midToken=AQFmrFVhGEd36Q&ek=invite_guest&loid=AQHqCW59qFMAkQAAAVfeS4dHs9-2WpxmY6V8-WyEIcbbsU-nyb9DdMlQlw0yulnRe9z_DmuucyZ9mRUquBr-QCsd7t_WQhfZDPDN8GO7sVwTGHuMjsMoGjpFK0PTjPQzB1Mq-giDuD72No4bEG8UoGjD8jyzSS2PbvHPbe2ysh7KN98M7debFkMJ4P74oo_INNBo&eid=0-iuha2ql9-rc
This email was sent to reply@reply.github.com.
If you need assistance or have questions, please contact LinkedIn Customer Service: https://www.linkedin.com/e/v2?e=0-iuha2ql9-rc&a=customerServiceUrl&ek=invite_guest
© 2016 LinkedIn Corporation, 2029 Stierlin Court, Mountain View CA 94043. LinkedIn and the LinkedIn logo are registered trademarks of LinkedIn.

authors: amateur-hkl rpbouman

repo: rpbouman/xavier


text:
🛑 Breze Cleaning is down

In fd63d9c, Breze Cleaning (https://brezecleaning.com/) was down:

HTTP code: 504
Response time: 5707 ms

Resolved: Breze Cleaning is back up in 19a8395.

repo: rpharaniya/websites-uptime-monitor


text:
Tab heading Icon

Hi
How do we add heading icon with tab data...???
$scope.tabData   = [
{
heading: "Settings fdf",
route:   'user.settings'
},
{
heading: 'Accounts',
route:   'user.accounts'
}
];

It's a feature request.  You might be able to do something with :before or :after elements but it's in the pipeline.

was this feature added by chance?   thanks

thanks for your reply,... but i edited your directive template and it works fine

Yes it's been added now, am working to finalise a new version release and update the docs.

authors: fireole rpocklin sajumani

repo: rpocklin/ui-router-tabs


text:
update repo description

currently it says
Binaries for heroku and local dev under OSX

but I think we only provide a binary for heroku cedar 14 :)

done

authors: pallymore rposborne

repo: rposborne/wkhtmltopdf-heroku


text:
winpty automatic slash-to-backslash conversion messes commands that need slashes

Environment

Windows 10 64x
mintty 2.0.3 from Git Bash
winpty 0.2.2-dev from Git Bash
Bash 4.3.42

Problem
Running docker inside mintty fails and there's a correct recommendation to use winpty:
$ docker run -it mrts/python-selenium-xvfb
the input device is not a TTY.  If you are using mintty, try prefixing the command with 'winpty'

However, when using winpty, slashes are converted to backslashes that messes up docker that expects slashes:
$ winpty docker run -it mrts/python-selenium-xvfb
docker: Error parsing reference: "mrts\\python-selenium-xvfb" is not a valid repository/tag.

Expected behavior
Slashes are not converted to backslashes or there is a way to turn this off.

FWIW, upstream winpty passes arguments through unmodified, which I think matches Cygwin's behavior.
If you can get upstream winpty working with your Git Bash environment, then I think you'd avoid this problem.  You could try downloading winpty-0.4.0 from https://github.com/rprichard/winpty/releases/tag/0.4.0.  I think you'd need the 32-bit or 64-bit MSYS2 packages according to uname -m.
MSYS2 (and MSYS, IIRC) uses a heuristic to automatically detect Unix-style paths in arguments and convert them to Windows-style paths.  IIRC, that conversion behavior isn't exposed from the MSYS2 DLL.
When winpty was packaged for MSYS2, the packager added the argument slash-to-backslash conversion.  Eventually, the argument conversion code from MSYS2 was brought into the MSYS2-packaged version of winpty: https://github.com/Alexpux/MSYS2-packages/commit/f6440fbde4b9df9a2ce89e45b65abda1c1f9e7f3.  That may be something this project should also do.  I'm guessing you don't have that version yet, because the MSYS2 conversion heuristic seems to leave foo/bar alone.  (OTOH, it will convert something like /foo/bar.)
Slightly related to https://github.com/rprichard/winpty/issues/81, but not really.

Thanks for the thorough explanation!

@mrts Did this solve your problem, i'm having the same issue with git bash.

MSYS2's automatic path conversion can be controlled by an environment variable MSYS2_ARG_CONV_EXCL.
See: https://sourceforge.net/p/msys2/wiki/Porting/#filesystem-namespaces
(I'm not sure this is the case.)

MSYS2 has a MSYS2_ARG_CONV_EXCL variable, which is a semicolon-delimited list of prefixes that are matched against arguments, with a special '*' value that matches anything.
It looks the process spawn's argument heuristic has a bunch of additional special cases in Git-for-Windows that aren't in MSYS2.  e.g.:

Git-for-Windows adds a MSYS_NO_PATHCONV variable that (I think) disables the heuristic if get() returns non-NULL.
Mangling is disabled for paths starting with @@ or paths that look like IPv6 addresses.
Compare Git-for-windows (https://github.com/git-for-windows/msys2-runtime/commits/msys2-master%2Bgit-for-windows/winsup/cygwin/msys2_path_conv.cc) versus MSYS2 (https://github.com/Alexpux/Cygwin/commits/msys2-master/winsup/cygwin/msys2_path_conv.cc).

The MSYS2-patched winpty uses the argument heuristic on the first argument, which is a mistake.  MSYS2 uses path::get_win32() for the first argument instead.  (See linebuf::fromargv in the MSYS2 runtime.)
I'm wondering again whether winpty should try to access the MSYS argv -> cmdline translation code.  If nothing else, it could use POSIX spawn to start winpty-agent.exe and have it dump the Windows command line (and environment?) to a pipe, then run winpty_open like it does now.  It would slow winpty startup.

authors: bw4sz k-takata mrts rprichard

repo: rprichard/winpty


text:
High memory use

SDWebImageManager *manager = [SDWebImageManager sharedManager];
[manager downloadImageWithURL:post.imageURL options:0 progress:^(NSInteger receivedSize, NSInteger expectedSize)
{
    // float progress = (float)receivedSize/expectedSize;
    // [cell.imageViewFoto updateProgress:progress];
}
completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished, NSURL *imageURL) {
    if (image) {
        [cell.imageViewFoto setupImageView:post indexPath:indexPath isGrid:NO  image:image];
    }
}];

whats the size of the image you are trying to download?

about 500kb each...
showing in a collectionview, about 12 images at same time...
The problem occurs when i scroll the collectionview, and request more and more and more images...
Maybe i have to disable the memory cache and only store in disk.. but i have no idea how to del with it

did you try setting these two:
[[SDImageCache sharedImageCache] setShouldDecompressImages:NO];
[[SDWebImageDownloader sharedDownloader] setShouldDecompressImages:NO];

by the way, whats the highest resolution of those images?

No, i havent, i will try this code...
The API returns me a lot of images already resized, so i choose witch one to use, depending of the iPhone resolution(100x100, 200x200, 500x500, 1000x1000, 1500x1500, 2000x2000)
in this particular case, im using the 500x500 ( but the print of the collectionview with the images was using 100x100 for testing)

Btw, where should ai use this code? appdelegate or viewcontroller?

should be before you make your requests. try the appdelegate

On viewcontroller nothing changed... still increasing memory

even on appdelegate, nothing have changed too... =(

    "thumbnail": {
      "height": 100,
      "url": "https://timehi.s3-sa-east-1.amazonaws.com/post/160c6ef0a2d2db2a6502.jpg",
      "width": 100
    }

the 100x100 pixels image is about 4kb...
and increase a lot of memory

why are you using SDWebImageManager's downloadImageWithURL:... and not [cell.imageView sd_setImageWithURL:...
can you try the demo project? do you see the same increase in memory there too?

i cant show the image as soon as the dowload finish, i have to implement some logic before with the image...

if you perform extra actions on the image you could use this
did you try the demo project? does it show the same memory increase?

i will, try right now

it still increasing memory with the code bellow:
[cell.image sd_setImageWithURL:downloadImg completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL) {
    if (image) {
        BOOL isGrid = YES;
        if (self.headerProfile.segmentedControl.selectedSegmentIndex == 1) {
            isGrid = NO;
            cell.image.delegate = self;
        }else{
            cell.image.delegate = nil;
        }
        [cell.image setupImageView:post indexPath:indexPath isGrid:isGrid image:image];
    }
}];

also have checked all strong and weak properties referencies... just to double check if the ARC is releasing all object correctly, but it's all right with it

try the demo project with your API urls but without doing anything extra to the image after download. do you still see any increase in memory?

I have to go now, but i will try in about 2 hours, tks by now

@CavalcanteLeo any updates? Any chance you are using animated (GIF) images?

by changing setShouldDecompressImages to YES, in some benchmarks, my app performance went from 600mb to about 50mb
[[SDWebImageDownloader sharedDownloader] setShouldDecompressImages:NO];
[[SDImageCache sharedImageCache] setShouldDecompressImages:NO];

and then from 50mb to about 5mb with this:
[[SDImageCache sharedImageCache] setShouldCacheImagesInMemory:NO];

also set some other properties (no impact changed):
[[SDImageCache sharedImageCache] setMaxMemoryCost:1024 * 1024 * 1];
[[SDImageCache sharedImageCache] setMaxCacheAge:3600 * 24 * 7];

and on each viecontroller e clean the cache
-(void)viewDidDisappear:(BOOL)animated{
    [super viewDidDisappear:animated];
    [self ckearImageCache];
}
-(void)didReceiveMemoryWarning{
    [super didReceiveMemoryWarning];
    [self ckearImageCache];
}
-(void)ckearImageCache{
    SDImageCache *imageCache = [SDImageCache sharedImageCache];
    [imageCache clearMemory];
}

but now, my problem is app performance, as i set ShouldDecompressImages to NO.
When i scroll my collection view to fast, my app freezes a bit

Did you try to activate the address sanitizer in your scheme? I have myself a crash because of sdwebimage when i activate it.

We have also been monitoring an issue with RAM usage being way to high. We upgraded to v3.7.3 and followed the example above. e.g.:

I am using 3.7.3 and did the code like
[[SDImageCache sharedImageCache] setShouldDecompressImages:YES];
[[SDWebImageDownloader sharedDownloader] setShouldDecompressImages:YES];
[[SDImageCache sharedImageCache] setShouldCacheImagesInMemory:NO]
it didn't work for me. How to solve the problem??

@SpaceStar2016
setShouldCacheImagesInMemory: is a method not available in v 3.7.3, so I am fairly sure you're not running v 3.7.3.
If you're using cocoapods to add dependencies to your project, change your podfile to:
pod 'SDWebImage', '3.7.3'
then run pod install
Remove the line:
[[SDImageCache sharedImageCache] setShouldCacheImagesInMemory:NO] or you will get compile errors.
Hopefully this will help.

@ynotski I am sure I am using 3.7.3 I can code [[SDImageCache sharedImageCache] setShouldCacheImagesInMemory:NO] in my project.

I think this issue is similar to #538 #586 and #1354.
#787 and 00bf467 should give you a good solution for dealing with large images. Together with the GIF handled by FLAnimatedImage, this ticket should be done now.
Closing. Let's see how this is with 4.0.0

This is closed but just want to add that I experience must higher memory usage in 4.0.0-beta2 that in mentioned here 3.7.3. In both cases with each image download memory is rising and not falling back later

Having same issue here, I am on xcode 9.4, swift 4.X, and tested on ios 11(Simulator)

After lots of R&D and applying all kind of options for SDImageCache, I have finalized below options to set to avoid crash on heavy images load with the Best performance on RAM cache load:
Hope this will help you all !!!
Add below code into your AppDelegate class:
import SDWebImage
SDImageCache.shared().config.maxCacheAge = 3600 * 24 * 7 //1 Week
        SDImageCache.shared().maxMemoryCost = 1024 * 1024 * 20 //Aprox 20 images
        //SDImageCache.shared().config.shouldCacheImagesInMemory = false //Default True => Store images in RAM cache for Fast performance
        SDImageCache.shared().config.shouldDecompressImages = false
        SDWebImageDownloader.shared().shouldDecompressImages = false
        SDImageCache.shared().config.diskCacheReadingOptions = NSData.ReadingOptions.mappedIfSafe

Thanks @smindia1988 for sharing these settings

great work.Thanks @smindia1988

Ok. I added https://github.com/SDWebImage/SDWebImage/wiki/Common-Problems#configuration-for-large-images-avoid-high-memory-usage

@smindia1988
I am using version 5.0.1 that don't has shouldDecompressImages and shouldDecompressImages.
So how to avoid crash on heavy images?

@ACode-Farmer Use .avoidDecodeImage. You can also use the OptionsProcesser for global control instead of invidual image request control. See #2736
I'll update the Wiki soon about this. Seems out of date.

Thanks for your  reply. @dreampiggy
When I load multiple pictures, the memory is still too high.Use the same website for all pictures.(imageUrl = http://qiniu.ve-link.com//img/20191007/16d4d2e4e823e7449014aff5074096508372c2e9.jpg?imageView2/3/q/100).
SDWebImage  @config:
SDImageCache.sharedImageCache.config.maxDiskAge = 3600 * 24 * 7; // 1 week
SDImageCache.sharedImageCache.config.maxMemoryCost = 1024 * 1024 * 20; //20 images
SDImageCache.sharedImageCache.config.shouldUseWeakMemoryCache = false; //Default True => Store images in RAM cache for Fast performance
SDImageCache.sharedImageCache.config.diskCacheReadingOptions = NSDataReadingMappedIfSafe;
SDWebImage Use:
[imageView sd_setImageWithURL:[NSURL URLWithString:obj] placeholderImage:nil options:SDImageCacheAvoidDecodeImage];
I tested three options setting:
1、SDWebImageScaleDownLargeImages
2、SDWebImageAvoidDecodeImage
3、SDWebImageScaleDownLargeImages | SDWebImageAvoidDecodeImage
Memory is still not reduced.

RAM usage for bitmap image usage, the fomula is really simple:
Pixel Count * 4.
For you demo image, it's a 3840px * 5120px, is 75MB.
So, you'd better choose another idea for this, such as preprocess the image with lower resolution, or using something on the Client like Wiki - Image Transformer. To scale down the resolution for images.
You can also try to use the CATiledLayer to display super large images. Which means, you don't load the image entirelly into memory, you load them by tiles. Then, track the user's scroll and load another tile, etc. This is just the technolegy used by Map apps (For example, a full map bitmap image is 10000000*10000000 pixels, this can not been hold in RAM at all).

@ACode-Farmer Update the documentation, see Wiki - Optimization for large images

Thanks @dreampiggy
Which version are these settings in?

The documentation is updated to latest SDK name. The options processor is available in 5.1.0, the other is available in 5.0.0. See wiki: https://github.com/SDWebImage/SDWebImage/wiki/Advanced-Usage#options-processor-510

authors: ACode-Farmer CavalcanteLeo SpaceStar2016 bpoplauschi dipkasyap dreampiggy jokerYellow michal-gumny-nomtek mime29 mythodeia smindia1988 ynotski

repo: rs/SDWebImage


text:
images not show on load view

New Issue Checklist

[ ] images not show on when view did load but in tableview when i scroll it hidden row images are show and when i scroll again all images are show,but the problem is that when  call viewdidload then images not showed in view. ]

Issue Info

Info
Value

Platform Name
e.g. ios

Platform Version
e.g. 10.0

SDWebImage Version
not sure

Integration Method
manually

Xcode Version
e.g. Xcode 8.0

Repro rate
e.g. all the time (100%)

Repro with our demo prj
e.g. does it happen with our demo project?

Demo project link
e.g. link to a demo project that highlights the issue

Issue Description and Steps
For e.g. i used this method
NSURL* url1 = [NSURL URLWithString:[NSString stringWithFormat:@"%@",[[ArrObj objectAtIndex:indexPath.row]valueForKey:@"img"]]];
[cell.Feedimg sd_setImageWithURL:url1
placeholderImage:nil options:indexPath.row == 0 ? SDWebImageRefreshCached : 0];

can this be replicated in the demo project?

Your Sincerely,
Prashant Patel
iOS Developer
+91 97129 91261
On Mon, Oct 3, 2016 at 9:51 PM, Konstantinos K. notifications@github.com
wrote:

can this be replicated in the demo project?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/rs/SDWebImage/issues/1688#issuecomment-251152413, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AQmQV1q1SA-7VKtwjLCib2CoV-y26OgVks5qwSuIgaJpZM4KMmKW
.

@psnt143 we cannot understand what you are saying.

hello,
when i run the app viewdidload are call and view are open but
images not load,but when i scroll all images load and show.
Your Sincerely,
Prashant Patel
iOS Developer
+91 97129 91261
On Tue, Oct 4, 2016 at 5:56 PM, Bogdan Poplauschi notifications@github.com
wrote:

@psnt143 https://github.com/psnt143 we cannot understand what you are
saying.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/rs/SDWebImage/issues/1688#issuecomment-251373423, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AQmQVyy3WWURaA1ojcnVbI1LzbKf1P-Tks5qwkX8gaJpZM4KMmKW
.

i attach my source code in above mail please check them.
Your Sincerely,
Prashant Patel
iOS Developer
+91 97129 91261
On Tue, Oct 4, 2016 at 6:19 PM, prashant patel psnt143@gmail.com wrote:

hello,
when i run the app viewdidload are call and view are open but
images not load,but when i scroll all images load and show.
Your Sincerely,
Prashant Patel
iOS Developer
+91 97129 91261
On Tue, Oct 4, 2016 at 5:56 PM, Bogdan Poplauschi <
notifications@github.com> wrote:

@psnt143 https://github.com/psnt143 we cannot understand what you are
saying.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/rs/SDWebImage/issues/1688#issuecomment-251373423,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AQmQVyy3WWURaA1ojcnVbI1LzbKf1P-Tks5qwkX8gaJpZM4KMmKW
.

I think I'm having a similar problem, but I'm not sure SDWebImage is the culprit.
Have a custom UITableViewCell subclass. In it I have a UIImageView which is embedded in a UIView that is used as a coloured background to the image.
When I attempt to configure the cell, either in cellForRowAtIndexPath: or in willDisplayCell: the initial size of the subviews is shown as 1000x1000. I try to set an image into the image view using [self.iconView sd_setImageWithURL:iconURL placeholderImage:placeholder]; I also set a background colour of the enclosing UIView.
The result is that the image does not get set and even the background colour of the UIView does not get set until the cells are dequeued a second time, either by scrolling or switching to a different view.
It seems like the cells are not ready to be configured. I bet it's a quirk of iOS 10, but man is it annoying.

Just call this method [self.iconView layoutIfNeeded] before make it circle.

thanks for your support.it's run well.
Your Sincerely,
Prashant Patel
iOS Developer
+91 97129 91261
On Wed, Oct 5, 2016 at 2:16 PM, codalamanp notifications@github.com wrote:

Just call this method [self.iconView layoutIfNeeded] before make it circle.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/rs/SDWebImage/issues/1688#issuecomment-251617157, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AQmQV0yOXvTbQhcyswj5McRwAJ0esgX-ks5qw2PQgaJpZM4KMmKW
.

If you're going to add code that accesses the layers of the such as adding a corner radius you can add that code into the cell's -layoutSubviews method and everything should work.
It seems that accessing the layer, or at least settings masksToBound=YES from inside willDisplayCell: or cellForRowAtIndexPath: will cause the image view to not load properly on the first pass. Putting it in -layoutSubviews works.

I spent three days of development trying to figure out why my image was not setting after it loaded using the SDCompletionBlock. After tried and true testing - Calling a setNeedsLayout - layoutIfNeeded - even manually updating the ReusableHeaderView for my collectionView using a layout context; @tylerjames answer did the trick. Unsure if this is an xCode bug or if this is by design, but changing my sublayer work (cornerRadius - contentMode) from my cellForRow to layoutSubviews did the trick. Thanks for a helpful thread guys. PS. SDWebImg is a rockstar.

authors: JPROFFICIAL bpoplauschi codalamanp mythodeia psnt143 tylerjames


text:
APP-721 Remove custom LoggerFactory

Remove the IntegrationBridgeCloudLoggerFactory from the code as a whole.
Remove dependency from Symphony Logging

@dnsymphony could you review it, please?

repo: rsanchez-daitan/App-Integrations-Trello


text:
RLP-406 Each client has a different password for each homeserver

Adding a new field to the client table current_server_name to save the current logged in server
Adding logic to delete a LC when the current server is not available anymore to force a new onboarding

Please remove unused imports

repo: rsksmart/lumino


text:
Arrow data MIME support

I recently used Apache Arrow in my project. Apache Arrow may be a de facto standard for data transfer on the wire in the future.

https://arrow.apache.org/faq/

https://www.iana.org/assignments/media-types/application/vnd.apache.arrow.stream

https://www.iana.org/assignments/media-types/application/vnd.apache.arrow.file

Will rsocket support these in the future?
This may made rsocket more powerful.

I am unclear on what support is required.
RSocket already allows for custom mimetypes by explicitly specifying it instead of using the preset ones.
If you have further questions I think the rsocket slack is a better place for that, as I don't think this is a question specifically for the python implementation.
If you still think this is a python specific issue i would love to see some use case so I can understand.

The supported mime type list is part of an extension specification (as i understand it). those mimetypes would need to be added there before they are added to the python specific implementation. again you should raise this in the rsocket slack.

See: https://github.com/rsocket/rsocket/blob/master/Extensions/WellKnownMimeTypes.md

@jell-o-fishi  Thanks for your quick reply, i will learn more about specifying custom mimetypes before i get back here.

@wtj-jtw see RSocketClient and RSocketServer arguments. metadata_encoding and data_encoding are both Union[bytes, WellKnownMimeTypes]. they can be one of the enums, or explicitly the mimetype, for example: b'vnd.apache.arrow.stream'

authors: jell-o-fishi wtj-jtw

repo: rsocket/rsocket-py


text:
Refactor failure matcher definitions to use a recommended technique.

I wouldn't encourage users to directly define methods on RSpec::Matchers so we probably shouldn't, either.

LGTM

authors: JonRowe myronmarston

repo: rspec/rspec-expectations


text:
routes.rb loads twice

Hi,
When I use rspec on a plain Rails site, I see that the routes.rb gets loaded twice resulting in 'already defined' route errors.
Current stack:

Ruby 2.4.1
Rails 5.0.2
Rspec-rails 3.5.2

rails g controller test index
rspec

Gemfile looks like this:
source 'https://rubygems.org'

git_source(:github) do |repo_name|
  repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/")
  "https://github.com/#{repo_name}.git"
end

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 5.0.2'
# Use mysql as the database for Active Record
gem 'mysql2', '>= 0.3.18', '< 0.5'
# Use Puma as the app server
gem 'puma', '~> 3.0'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .coffee assets and views
gem 'coffee-rails', '~> 4.2'
# See https://github.com/rails/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby

# Use jquery as the JavaScript library
gem 'jquery-rails'
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
gem 'turbolinks', '~> 5'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.5'
# Use Redis adapter to run Action Cable in production
# gem 'redis', '~> 3.0'
# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'

# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development

group :development, :test do
  # Call 'byebug' anywhere in the code to stop execution and get a debugger console
  gem 'byebug', platform: :mri
end

group :test do
  gem 'rspec-rails'
end

group :development do
  # Access an IRB console on exception pages or by using <%= console %> anywhere in the code.
  gem 'web-console', '>= 3.3.0'
  gem 'listen', '~> 3.0.5'
  # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
  gem 'spring'
  gem 'spring-watcher-listen', '~> 2.0.0'
end

# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]

when I put a debug line in routes.rb, I see that the routes.rb gets called twice.
routes.rb:
puts "Loading #{__FILE__}. Backtrace:"
puts caller.join("\n")
puts

Rails.application.routes.draw do
  get 'test/index'

  # For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
end

rspec-rails doesn't actually load your routes file at all, the only require done in a standard rspec-rails install is config/environment.rb in your spec or rails helper which then loads Rails and Rails is responsible for loading everything else, however I suggest you check that your code or tests isn't manually requiring your route file, as typically double loads like this occur when a file is required by different file names (e.g. require "./config/routes.rb" and require "/full/path/to/config/routes.rb")

typically double loads like this occur when a file is required by different file names (e.g. require "./config/routes.rb" and require "/full/path/to/config/routes.rb")

I think Ruby normalizes the path in require these days to prevent this problem.
% cat test/test.rb
puts :required!

irb> require '/app/test/test'
required!
=> true
irb> require './test/test'
=> false
irb> RUBY_VERSION
=> "2.3.3"

authors: JonRowe mikegee shockie

repo: rspec/rspec-rails


text:
Travis fixes

Hopefully fix the build (again) and ~setup code climate coverage information~.

Merging to get the build green.


text:
Major Update

Includes a number of corrections to the determination of the unit vectors. Unit tests have been significantly expanded. Default parameters have been updated based upon sensitivity testing. Moved in situ satellite routines to a satellite submodule. Expanded testing to include multiprocessor support so that high resolution figures may be produced. Incorporated work performed over the summer at UCAR.

Pull Request Test Coverage Report for Build 192

882 of 1715 (51.43%)  changed or added relevant lines in 4 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-16.4%) to 58.483%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pysatMagVect/_core.py
222
225
98.67%

pysatMagVect/satellite.py
39
49
79.59%

pysatMagVect/tests/test_core.py
620
1440
43.06%

Totals

Change from base Build 82:
-16.4%

Covered Lines:
1203

Relevant Lines:
2057

💛  - Coveralls

Pull Request Test Coverage Report for Build 192

882 of 1715 (51.43%)  changed or added relevant lines in 4 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-16.4%) to 58.483%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pysatMagVect/_core.py
222
225
98.67%

pysatMagVect/satellite.py
39
49
79.59%

pysatMagVect/tests/test_core.py
620
1440
43.06%

Totals

Change from base Build 82:
-16.4%

Covered Lines:
1203

Relevant Lines:
2057

💛  - Coveralls

authors: coveralls rstoneback

repo: rstoneback/pysatMagVect


text:
Add docs for pin_upload

This is currently not mentioned anywhere.

Weird, I didn't find that page when looking for it. No worries, no longer form docs needed.

repo: rstudio/pins-python


text:
Cache browsers for Playwright

This PR caches browsers for Playwright in GitHub Actions.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

It turns out that this change doesn't actually speed up CI runs, because the time spent installing browsers is pretty small; most of the time is spent installing Ubuntu system dependencies.

authors: CLAassistant wch

repo: rstudio/py-shiny


text:
ライントレース用のコースを作成

What does this implement/fix?

ライントレース用コースのワールドを作成しました。
Does this close any currently open issues?

しません。
How has this been tested?

下記のコマンドを実行するとライントレース用サンプルコースのワールドが表示されます。また、RGBカメラを搭載したRaspberry Pi Mouseも配置されます。
ros2 launch raspimouse_gazebo raspimouse_with_line_follower_field.launch.py use_rgb_camera:=true

Any other comments?

Checklists

[x]  I have read the CONTRIBUTING guidelines.

If there is no guideline in the repository, rt-net organization's guideline applies.

[x]  I have checked to ensure there aren't other open Pull Requests for the same change.

ライントレース用コースの線幅を4cmに変更しました。


text:
Core themes - Embedding stories issue list

Device resolution

Chrome
iPad - 768x1024 and 1024x1366
iPhone - 414x896
iPhoneXR - 320x568
iPhoneX - 375x812
Moto G4 - 360x640
Pixel 2 - 411x731

Mac - Big Sur, 1366x604
Mac - Catalina
Firefox

Bug 1

The circles are not aligned in the container

Bug 2

On opening the story, the featured image of page is overlapping. Please check the following visual.

https://user-images.githubusercontent.com/41000648/107949027-a5ba9200-6fba-11eb-95a9-b748767862e8.mp4

Bug 3

After the last story, there is lot of space. Its not looking good.

Bug 4

In Firebox browser below the stories, horizontal scroll is shown. In other browser's this is not available but only on firefox browser.

Bug 1, Bug 3 and Bug 4

Are addressed.

Bug 2

@divyarajmasani this is still an issue, please could you look into it?

It was due to a sticky post

authors: maitreyie-chavan pooja-muchandikar

repo: rtCamp/web-stories-wp


text:
Add Domain objects

The goal here is to make our usage of domains more explicit. This includes CNAME's, and our tracking or domain usage of people on our site.
To do:

[x] Model Domain objects
[ ] Migrate Canonical URL on project to Domain object
[ ] Build admin panel (API-based)
[ ] Create objects in middleware on domain usage

Related #1575

Closing as we now have a PR.

authors: ericholscher gregmuellegger


text:
Unable to add subproject

Details

Project URL: docs.radiokit.org
Build URL (if applicable):
Read the Docs username (if applicable): radiokit

Expected Result
I am trying to add radiokit-depot as a subproject to radiokit with alias depot. It should be added.
Actual Result
It shows error message Project radiokit-depot does not exist despite project being visible in my project list.

Closing this as the user hasn't responded or given more information, feel free to reopen with more information if you are still having this problem :).

authors: mspanc stsewd


text:
Update zio-magic to 0.3.11

Updates io.github.kitlangton:zio-magic from 0.2.6 to 0.3.11.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "io.github.kitlangton", artifactId = "zio-magic" } ]

labels: library-update, early-semver-major, semver-spec-minor

Superseded by #74.

repo: rtimush/zio-magic-comments


text:
export default support

I'm exposing a simple module federated button component that uses export default:
// Button.tsx
...
export default Button;

dts-loader creates the following file:
// Button.d.ts
export * from './dts/components/Button/Button';

As I understand it, this does not expose default exports, only named exports. So typescript is not picking up types on my remote Button.
One way of fixing might be to change dts-loader to create the following file instead:
// Button.d.ts
export * from './dts/components/Button/Button';
import defaultExport from './dts/components/Button/Button';
export default defaultExport;

This handles both named and default export cases. Thoughts?

@denis-heka try to update to latest version, should be fixed

Amazing timing thanks @ruanyl . Closing

authors: denis-heka ruanyl

repo: ruanyl/dts-loader


text:
ISO 639 (language) and ISO 3166-1 alpha-2 (2-letter country) codes.

Was looking at using the Plural functionality within this library and noticed that here: https://github.com/rubenv/angular-gettext/blob/master/src/plural.js#L4 It requires a 2 character language rather than locale in the typical format of en-GB, sv-SE etc.
If I want to have an app localised for both British and American then there's nothing I can do.
I think angular-gettext storing locale adds extra flexibility. The language can still be extracted as the first 2 characters if you want that.

We now support this, though you'll need to use the gettext-standard underscore: en_GB.

authors: intellix rubenv

repo: rubenv/angular-gettext


text:
不知是否可以支持homebrew安装

看到名字就下意识去brew search了，但是并没有找到。

@nianshuzhi 会尽快支持

还有剪贴板功能目前还没有吧？感觉这个应该都挺需要的。

@nianshuzhi 还没，玩命开发中...

加油！

@nianshuzhi 已支持剪贴板功能，请下载 2.0.1-beta.17 体验。 得利于 rubick 支持系统插件，所以剪切板开启自动粘贴功能后，可以在不呼起插件的情况下，当剪贴板发生复制动作时，自动保存到剪切板插件中。

authors: muwoo nianshuzhi

repo: rubickCenter/rubick


text:
An error occurred while Rails/UniqueValidationWithoutIndex cop

Information
0.80.1 (using Parser 2.7.0.5, running on ruby 2.6.3 x86_64-linux)
(Running under BitBucket-Pipeline in Ruby 2.6.3 docker image)
Error
An error occurred while Rails/UniqueValidationWithoutIndex cop was inspecting /opt/atlassian/pipelines/agent/build/app/models/user.rb:11:2.
To see the complete backtrace run rubocop -d.
1 error occurred:
An error occurred while Rails/UniqueValidationWithoutIndex cop was inspecting /opt/atlassian/pipelines/agent/build/app/models/user.rb:11:2.
Errors are usually caused by RuboCop bugs.
Please, report your problems to RuboCop's issue tracker.
https://github.com/rubocop-hq/rubocop/issues
Mention the following information in the issue report:
0.80.1 (using Parser 2.7.0.5, running on ruby 2.6.3 x86_64-linux)
Inspecting 56 files
........................................................
56 files inspected, no offenses detected

The file in error
# User of the app
class User < ApplicationRecord
  attr_writer :login # Used for devise authentication by username

  devise :invitable, :database_authenticatable,
         :recoverable, :rememberable, :trackable, :validatable,
         :confirmable, :lockable, :timeoutable, timeout_in: 2.days

  belongs_to :legacy_user, foreign_key: :id, inverse_of: :user

  validates :username, presence: true, uniqueness: { case_sensitive: false }
  validates :username, format: { with: /^[a-zA-Z0-9_\.]*$/, multiline: true }

  def login
    @login || username
  end

  def self.find_first_by_auth_conditions(warden_conditions)
    conditions = warden_conditions.dup
    login = conditions.delete(:login)
    if login.present?
      where(conditions).find_by(["lower(username) = :value ", { value: login.downcase }])
    elsif conditions[:username].nil?
      find_by(conditions)
    else
      find_by(username: conditions[:username])
    end
  end
end

Extra information
I am not able to replicate the issue on my PC (Mac OS Catalina).
Thank you

@jamesst20 Thank you for the feedback. Can you show me the backtrace of running rubocop -d?

@koic
BitBucket Pipeline didn't make it easy to copy paste hehe
https://pastebin.com/LQhyhHY3

@denny
Have same issue
0.74.0 (using Parser 2.7.0.5, running on ruby 2.6.5 x86_64-linux)
Running with debug flag gives this error:
An error occurred while Rails/UniqueValidationWithoutIndex cop was inspecting /home/oleh/dev/bookstore/app/models/category.rb:4:2.
undefined method `method?' for #<RuboCop::AST::BlockNode:0x0000558992abdbe8>
Did you mean?  method
               methods

@olehvolynets Can you open a new issue with the error reproduction steps?
https://github.com/rubocop-hq/rubocop-rails/issues/new?template=bug_report.md

@koic Sorry, couldn't reproduce the error, but noticed that rubocop was outdated, so updating to 0.81.0 and rubocop-rails to 2.5 solved that error for me.
Previously had rubocop 0.74.0 and rubocop-rails 2.3.
But now have bug described in #225

I updated rubocop and still having the same error
Mention the following information in the issue report:
0.81.0 (using Parser 2.7.0.5, running on ruby 2.6.3 x86_64-linux)

@jamesst20 is rubocop-rails version 2.5 ?

@olehvolynets Yes it is

RuboCop Rails 2.5.1 has been released. If the error is the same cause as #214, the issue will be resolved.
https://github.com/rubocop-hq/rubocop-rails/releases/tag/v2.5.1
If you upgrade to RuboCop Rails 2.5.1 and still get unexpected errors, please open a new issue with reproduction steps . Thank you for your feedback!

@koic
It did not fix the issue, please reopen the issue.
I already did provide the replication step: Running rubocop in a bitbucket pipeline with Ruby 2.6.3 image.
Thank you

https://github.com/rubocop-hq/rubocop-rails/issues/226

authors: jamesst20 koic olehvolynets

repo: rubocop-hq/rubocop-rails


text:
Add new Rails/MailerName cop

https://rails.rubystyle.guide/#mailer-name
# bad
class User < ActionMailer::Base
end

class User < ApplicationMailer
end

# good
class UserMailer < ActionMailer::Base
end

class UserMailer < ApplicationMailer
end

Thanks!

authors: fatkodima koic


text:
Add EnforcedStyle for Style/DoubleNegation cop

This PR adds EnforcedStyle option for Style/DoubleNegation cop, and EnforcedStyle: context by default based on #7833 survey.
# @example EnforcedStyle: context (default)
#   # good
#   def foo?
#     !!return_value
#   end
#
# @example EnforcedStyle: always
#   # bad
#   def foo?
#     !!return_value
#   end

Ruby will return the last evaluated value.
This PR only supports simple contexts, such as the end of line value of method, and when using return.
A complex contexts should also be supported, such as when branching with if and others in the future.

Before submitting the PR make sure the following are checked:

[x] Wrote good commit messages.
[x] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[x] Added an entry to the Changelog if the new code introduces user-observable changes. See changelog entry format.
[x] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[x] Run bundle exec rake default. It executes all tests and RuboCop for itself, and generates the documentation.

The cop description should also be updated, as it currently pertains only to the forbidden style.

authors: bbatsov koic

repo: rubocop-hq/rubocop