Flycheck warning in Emacs’ *Messages* buffer are not displayed correctly

693 Views Asked by At

The following is an example of how my flycheck errors show up on emacs:

Method name "createQATask" doesn't conform to 
'[a-z_][a-z0-9_]{2,30}$' pattern [invalid-name]

Here are the checkers I’m running (checked through C-c ! v):

Syntax checkers for buffer __manifest__.py in python-mode:

First checker to run:

  python-flake8
    - may enable:         yes
    - executable:         Found at /usr/bin/python3
    - configuration file: Not found
    - `flake8' module:    Found at "/home/devdesk4/.local/lib/python3.5/site-packages/flake8/__init__.py"
    - next checkers:      python-pylint, python-mypy

Checkers that may run as part of the first checker's chain:

  python-pylint
    - may enable:         yes
    - executable:         Found at /usr/bin/python3
    - configuration file: Found at "/home/devdesk4/.pylintrc"
    - `pylint' module:    Found at "/home/devdesk4/.local/lib/python3.5/site-packages/pylint/__init__.py"
    - next checkers:      python-mypy

Checkers that could run if selected:

  python-pycompile  select
    - may enable:    yes
    - executable:    Found at /usr/bin/python3
    - next checkers: python-mypy

I’ve tried disabling python-pylint’s configuration file, but the behavior still remains. I’ve also tried a minimal .emacs configuration which only contained the following:

(setq package-archives                                                                                                                                                        
      '(("gnu" . "http://elpa.gnu.org/packages/")                                                                                                                             
        ("marmalade" . "http://marmalade-repo.org/packages/")                                                                                                                 
        ("melpa" . "http://melpa.milkbox.net/packages/")                                                                                                                      
        ("melpa-stable" . "https://stable.melpa.org/packages/")))

(use-package flycheck
  :ensure t
  :init
  (global-flycheck-mode t))

Are those symbols (", ') not being displayed properly, or is this some sort of default flycheck configuration that I can override?

April 25, 2020 Update (Possible Solution)

Weirdly, I executed pip install --upgrade pylint just to check if I really had the latest version of pylint, and it upgraded from 2.3.0 to 2.4.4, and that fixed the issue.

However, this solution conflicts with using https://pypi.org/project/pylint-odoo/, because it reverts me back to version 2.3.0 which has those html-escape sequences.

Same-day update

It’s confirmed to be an upstream bug in Pylint.

1

There are 1 best solutions below

4
On

The following is an example of how my flycheck errors show up on emacs:

Method name "createQATask" doesn't conform to '[a-z_][a-z0-9_]{2,30}$' pattern [invalid-name]

The linter evidentially believes it should be producing HTML output.

By the looks of it you are running all of python-flake8, python-pylint, and python-mypy. I suggest that you firstly test them one at a time to establish which one is producing that output, and then look at the documentation for that tool to find out how to prevent it from generating HTML.