Bug 1632502

Summary: Review Request: python-lark-parser - Modern general-purpose parsing library for Python
Product: [Fedora] Fedora Reporter: Thomas Andrejak <thomas.andrejak>
Component: Package ReviewAssignee: Luis Bazan <bazanluis20>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: bazanluis20, decathorpe, mhroncok, package-review
Target Milestone: ---Keywords: Reopened
Target Release: ---Flags: bazanluis20: fedora-review+
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: python-lark-parser-0.6.4-1.fc30 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-06-19 16:18:56 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Thomas Andrejak 2018-09-24 22:37:24 UTC
Spec URL: https://fedorapeople.org/~totol/python-lark-parser.spec
SRPM URL: https://fedorapeople.org/~totol/python-lark-parser-0.6.4-0.fc30.src.rpm
Description:
Lark is a modern general-purpose parsing library for Python.

Lark focuses on simplicity and power. It lets you choose between
two parsing algorithms:

Earley : Parses all context-free grammars (even ambiguous ones)!
It is the default.

LALR(1): Only LR grammars. Outperforms PLY and most if not all
other pure-python parsing libraries.

Both algorithms are written in Python and can be used interchangably
with the same grammar (aside for algorithmic restrictions).
See "Comparison to other parsers" for more details.

Lark can automagically build an AST from your grammar, without any
more code on your part.

Features:

- EBNF grammar with a little extra
- Earley & LALR(1)
- Builds an AST automagically based on the grammar
- Automatic line & column tracking
- Automatic token collision resolution (unless both tokens are regexps)
- Python 2 & 3 compatible
- Unicode fully supported

Comment 1 Luis Bazan 2018-09-25 19:24:06 UTC
Issues:
=======
- If (and only if) the source package includes the text of the license(s)
  in its own file, then that file, containing the text of the license(s)
  for the package is included in %license.
  Note: License file LICENSE is not marked as %license
  See:
  http://fedoraproject.org/wiki/Packaging/LicensingGuidelines#License_Text

Rpmlint
-------
Checking: python-lark-parser-0.6.4-0.fc30.noarch.rpm
          python-lark-parser-0.6.4-0.fc30.src.rpm
python-lark-parser.noarch: W: spelling-error %description -l en_US Earley -> Earle, Parley, Barley
python-lark-parser.noarch: W: spelling-error %description -l en_US interchangably -> interchangeably, interchangeable, interchangeability
python-lark-parser.noarch: W: spelling-error %description -l en_US automagically -> automatically, auto magically, auto-magically
python-lark-parser.src: W: spelling-error %description -l en_US Earley -> Earle, Parley, Barley
python-lark-parser.src: W: spelling-error %description -l en_US interchangably -> interchangeably, interchangeable, interchangeability
python-lark-parser.src: W: spelling-error %description -l en_US parsers -> parser, parses, parers
python-lark-parser.src: W: spelling-error %description -l en_US automagically -> automatically, auto magically, auto-magically
python-lark-parser.src: W: invalid-url Source0: lark-parser-0.6.4.tar.gz
2 packages and 0 specfiles checked; 0 errors, 8 warnings.

Rpmlint (installed packages)
----------------------------
sh: /usr/bin/python: No such file or directory
python-lark-parser.noarch: W: spelling-error %description -l en_US Earley -> Earle, Parley, Barley
python-lark-parser.noarch: W: spelling-error %description -l en_US interchangably -> interchangeably, interchangeable, interchangeability
python-lark-parser.noarch: W: spelling-error %description -l en_US automagically -> automatically, auto magically, auto-magically
python-lark-parser.noarch: W: invalid-url URL: https://github.com/lark-parser/lark <urlopen error [Errno -2] Name or service not known>
1 packages and 0 specfiles checked; 0 errors, 4 warnings.

Comment 2 Luis Bazan 2018-09-25 19:30:15 UTC
%license LICENSE

remove %defattr(-,root,root,-)

%{python3_sitelib}/lark_parser-*.egg-info  <- try this

Comment 3 Luis Bazan 2018-09-25 19:32:16 UTC
change 

%build
%py3_build

%install
%py3_install

https://fedoraproject.org/wiki/Packaging:Python

Comment 4 Luis Bazan 2018-09-25 19:34:38 UTC
Release start in 1 no 0 please change 

fix this and I approve the package!

Regards!

Comment 5 Thomas Andrejak 2018-09-25 20:37:56 UTC
Thanks for the review, I just updated the spec file.

Can you re-review it ?

Comment 6 Luis Bazan 2018-09-25 21:29:21 UTC
Package approved!

regards!

Comment 7 Thomas Andrejak 2018-09-26 06:33:14 UTC
Thanks !

Comment 8 Gwyn Ciesla 2018-09-26 13:05:46 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/python-lark-parser

Comment 9 Fedora Update System 2018-09-29 05:53:03 UTC
python-lark-parser-0.6.4-1.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2018-af445bfc33

Comment 10 Fedora Update System 2018-09-29 05:53:45 UTC
python-lark-parser-0.6.4-1.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2018-cb156756d4

Comment 11 Fedora Update System 2018-09-30 00:25:04 UTC
python-lark-parser-0.6.4-1.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-cb156756d4

Comment 12 Fedora Update System 2018-09-30 01:13:57 UTC
python-lark-parser-0.6.4-1.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2018-af445bfc33

Comment 13 Fedora Update System 2018-10-14 23:05:17 UTC
python-lark-parser-0.6.4-1.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.

Comment 14 Fedora Update System 2018-10-30 17:17:20 UTC
python-lark-parser-0.6.4-1.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.

Comment 15 Fabio Valentini 2018-11-26 19:22:37 UTC
There are some issues with this package, and it should probably not have been accepted as-is.

1) https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_naming

"A built package however must include the Python major version in the name, using the python3- prefix. This is accomplished by adding a subpackage. See example bellow."

There is no such python3-lark-parser sub-package.

2) The Group tag should not be present.

3) The package contains a test suite. It is not run in %check.

I'm CCing Miro, because he knows more about python packaging than I do - also because the package naming might cause confusion and might have to be fixed at some point.

Comment 16 Miro Hrončok 2018-11-27 06:39:47 UTC
Agreed, this is violating the Python naming guidelines. See the example specfile at:

https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_example_python_spec_file


Luis, as a sponsor, please be more careful when approving packages.

2 and 3 also makes a point.

Comment 17 Luis Bazan 2018-11-27 14:31:51 UTC
Hi Miro --

My apologize.

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

Thomas please fix asap! 

(1)
https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_example_python_spec_file

remove group tag (2) / enable test. (3)

Regards!

Comment 18 Luis Bazan 2018-12-04 17:15:29 UTC
Hi Thomas --

Any update?

Cheers,

Comment 19 Thomas Andrejak 2018-12-05 21:59:57 UTC
Hi,

I will do that during decembre, maybe during the second part of december.

Regards,

Comment 20 Luis Bazan 2019-01-08 15:31:10 UTC
Hi Thomas --

Any update?

Cheers,

Comment 21 Thomas Andrejak 2019-01-11 00:23:21 UTC
Hello

I just pushed the a new spec in the git. Can you tell me if it's now ok ?

I keeped disabled the tests because they are failing. But it's fully working for my usage. I have to check what is going on.
The next update (0.6.5 need js2py that is not packaged so I can't just bump the version).

Regards

Comment 22 Miro Hrončok 2019-01-11 08:22:11 UTC
Naming's OK now, thanks.

Comment 23 Fabio Valentini 2019-01-11 10:55:34 UTC
The tests are only failing because one file ("test.lark") is missing from the pypi sources.
If you include that in your package and copy it to the expeced location, the tests pass.

Also, where did you get the information that 0.6.5 now needs js2py?
I've been using 0.6.5 for some time without it, and looking at the diff from 0.6.4 to 0.6.5, there's no mention of such a change.

Comment 24 Luis Bazan 2019-06-13 20:51:30 UTC
Hi Thomas -- Any update!

Cheers,

Comment 25 Thomas Andrejak 2019-06-16 22:42:21 UTC
Hello

I was wrong, I liked this bug : https://bugzilla.redhat.com/show_bug.cgi?id=1697347

So now, everything should be ok.

Regards.