Bug#899233: ITP: sqlalchemy-i18n -- Internationalization extension for SQLAlchemy models

2018-05-21 Thread Edward Betts
Package: wnpp
Severity: wishlist
Owner: Edward Betts <edw...@4angle.com>

* Package name: sqlalchemy-i18n
  Version : 1.0.3
  Upstream Author : Konsta Vesterinen <kon...@fastmonkeys.com>
* URL : https://github.com/kvesteri/sqlalchemy-i18n
* License : BSD-3-clause
  Programming Lang: Python
  Description : Internationalization extension for SQLAlchemy models

 Extend SQLAlchemy models to include translations in different languages.
 .
 Each model can have an associated model that contains translatable fields.
 .
 Translatable attributes are available in the current locale via a hybrid
 property on the base model.

I plan to maintain this package as part of the python modules team.
-- 
Edward.



Re: Bug#899097: ITP: more-itertools - already packaged, my mistake

2018-05-19 Thread Edward Betts
Whoops, more-itertools is already packaged. I'm retracting my ITP.

Sorry about the noise.
-- 
Edward.



Bug#899097: ITP: more-itertools -- More routines for operating on Python iterables, beyond itertools

2018-05-19 Thread Edward Betts
Package: wnpp
Severity: wishlist
Owner: Edward Betts <edw...@4angle.com>

* Package name: more-itertools
  Version : 4.1.0-1
  Upstream Author : Erik Rose <erikr...@grinchcentral.com>
* URL : https://github.com/erikrose/more-itertools
* License : MIT
  Programming Lang: Python
  Description : More routines for operating on Python iterables, beyond 
itertools

 The itertool module from the Python standard library provides a number of
 iterator building blocks. Together, they form an "iterator algebra" making it
 possible to construct specialized tools succinctly and efficiently in pure
 Python.
  
 This module contains another 86 such functions. They cover these areas:
   
  * Grouping: yield groups of items from a source iterable
  * Lookahead and lookback: peek at an iterable's values without advancing it
  * Windowing: yield windows of items from an iterable
  * Augmenting: yield items from an iterable, plus additional data
  * Combining: combine multiple iterables
  * Summarizing: return summarized or aggregated data from an iterable
  * Selecting: yield certain items from an iterable
  * Combinatorics: yield combinatorial arrangements of items from iterables
  * Wrapping: smooth working with objects that produce or consume iterables

I plan to maintain this package as part of the python modules team.



Updates to the Python/GitPackagingPQ wiki page

2018-05-18 Thread Edward Betts
Hello from the mini-DebConf in Hambug.

I've made some improvements to the Python packaging with gbp-pq wiki page.

https://wiki.debian.org/Python/GitPackagingPQ

I've replaced all the references to alioth with instructions for Salsa.

Feel free to revert or correct any of my changes that you think are wrong.

The page still needs some more work so it covers both the packaging of modules
and applications. Currently the examples are all for packaging modules.
-- 
Edward.



Bug#898548: ITP: pytest-sugar -- a plugin for py.test that changes the default look

2018-05-13 Thread Edward Betts
Package: wnpp
Severity: wishlist
Owner: Edward Betts <edw...@4angle.com>

* Package name: pytest-sugar
  Version : 0.9.1
  Upstream Author : Teemu <orkkiole...@gmail.com>
Janne Vanhala <janne.vanh...@gmail.com>
* URL : https://github.com/Frozenball/pytest-sugar
* License : BSD-3-clause
  Programming Lang: Python
  Description : a plugin for py.test that changes the default look

 This is a pluin for the py.test Python testing framework.
 .
 With this plugin a progress bar is displayed while tests are running
 and test failures are shown immediately.

I plan to maintain this package as part of the python modules team.
-- 
Edward.



Bug#897989: ITP: braceexpand -- Bash-style brace expansion for Python

2018-05-05 Thread Edward Betts
Package: wnpp
Severity: wishlist
Owner: Edward Betts <edw...@4angle.com>

* Package name: braceexpand
  Version : 0.1.2
  Upstream Author : Stanis Trendelenburg <stanis.trendelenb...@gmail.com>
* URL : https://github.com/trendels/braceexpand
* License : MIT
  Programming Lang: Python
  Description : Bash-style brace expansion for Python

 Implements Brace Expansion as described in bash(1).

 The braceexpand function returns an iterator over the expansions generated
 from a pattern.

I plan to maintain this package as part of the python modules team.

-- 
Edward.



Re: Test suite in github but missing from pypi tarballs

2016-04-23 Thread Edward Betts
Here is the progress for each package.

> csvkit https://github.com/onyxfish/csvkit

Done, just waiting for a new pypi release. See
https://github.com/wireservice/csvkit/issues/20

> django-jinja   https://github.com/niwibe/django-jinja

Upstream not interested, claims the tests are hard to run.
https://github.com/niwinz/django-jinja/issues/135

> dockerpty  https://github.com/d11wtq/dockerpty

https://github.com/d11wtq/dockerpty/pull/21

> pdfrw  https://github.com/pmaupin/pdfrw

https://github.com/pmaupin/pdfrw/pull/53

> pep8-naminghttps://github.com/flintwork/pep8-naming

https://github.com/PyCQA/pep8-naming/pull/24

> pkgconfig  https://github.com/matze/pkgconfig

https://github.com/PyCQA/pep8-naming/pull/24

> pydot  https://github.com/erocarrera/pydot

https://github.com/erocarrera/pydot/pull/120

> pylast http://github.com/pylast/pylast

https://github.com/pylast/pylast/pull/169

> pysrt  https://github.com/byroot/pysrt

https://github.com/byroot/pysrt/issues/42
https://github.com/byroot/pysrt/pull/59

> python-argshttps://github.com/kennethreitz/args

https://github.com/kennethreitz/args/pull/19

> python-astor   https://github.com/berkerpeksag/astor

https://github.com/berkerpeksag/astor/pull/52

> python-cachecontrolhttps://github.com/ionrock/cachecontrol

https://github.com/ionrock/cachecontrol/pull/120

> python-easywebdav  https://github.com/amnong/easywebdav

https://github.com/amnong/easywebdav/pull/47

> python-gnutls  https://github.com/AGProjects/python-gnutls

https://github.com/AGProjects/python-gnutls/pull/1

> python-hpilo   https://github.com/seveas/python-hpilo

https://github.com/seveas/python-hpilo/pull/112

> python-humanizehttps://github.com/jmoiron/humanize

https://github.com/jmoiron/humanize/issues/33
https://github.com/jmoiron/humanize/pull/34

> python-jsonpifyhttps://github.com/wcdolphin/flask-jsonpify

https://github.com/corydolphin/flask-jsonpify/pull/13

> txws   https://github.com/MostAwesomeDude/txWS

https://github.com/MostAwesomeDude/txWS/pull/29

> vcversionerhttps://github.com/habnabit/vcversioner

https://github.com/habnabit/vcversioner/pull/7

> whichcraft https://github.com/pydanny/whichcraft

https://github.com/pydanny/whichcraft/pull/1

-- 
Edward.



Re: Test suite in github but missing from pypi tarballs

2016-04-22 Thread Edward Betts
Here is a list of packages that include a test suite on github but not in
the DPMT git.

csvkit https://github.com/onyxfish/csvkit
django-haystackhttps://github.com/toastdriven/django-haystack
django-jinja   https://github.com/niwibe/django-jinja
django-recurrence  https://github.com/django-recurrence/django-recurrence
django-webpack-loader  https://github.com/owais/django-webpack-loader
djoser https://github.com/gizmag/django-fsm-log
dockerpty  https://github.com/d11wtq/dockerpty
drf-generators https://github.com/Brobin/drf-generators
mod-wsgi   https://github.com/GrahamDumpleton/mod_wsgi
pdfrw  https://github.com/pmaupin/pdfrw
pep8-naminghttps://github.com/flintwork/pep8-naming
pkgconfig  https://github.com/matze/pkgconfig
pydot  https://github.com/erocarrera/pydot
pylast http://github.com/pylast/pylast
pysrt  https://github.com/byroot/pysrt
python-argshttps://github.com/kennethreitz/args
python-astor   https://github.com/berkerpeksag/astor
python-cachecontrolhttps://github.com/ionrock/cachecontrol
python-easywebdav  https://github.com/amnong/easywebdav
python-exifhttps://github.com/ianare/exif-py
python-gnutls  https://github.com/AGProjects/python-gnutls
python-hpilo   https://github.com/seveas/python-hpilo
python-humanizehttps://github.com/jmoiron/humanize
python-jsonpifyhttps://github.com/wcdolphin/flask-jsonpify
python-model-mommy http://github.com/vandersonmota/model_mommy
python-mrjob   http://github.com/Yelp/mrjob
python-pgspecial   https://github.com/dbcli/pgspecial
python-pip https://github.com/pypa/pip
python-pretend https://github.com/alex/pretend
python-rplyhttps://github.com/alex/rply
python-scp https://github.com/jbardin/scp.py
python-sentinels   https://github.com/vmalloc/sentinels
python-sunlighthttps://github.com/sunlightlabs/python-sunlight
python-trezor  https://github.com/trezor/python-trezor
python-zxcvbn  https://github.com/dropbox/python-zxcvbn
responses  https://github.com/getsentry/responses
subliminal https://github.com/Diaoul/subliminal
txws   https://github.com/MostAwesomeDude/txWS
vcversionerhttps://github.com/habnabit/vcversioner
whichcraft https://github.com/pydanny/whichcraft

This is the code I ran on git.debian.org to generate the list.

#!/usr/bin/python3

from subprocess import Popen, PIPE
from urllib.request import urlopen
from urllib.error import HTTPError
import os
import re

re_github_url = re.compile('(https?://[^/ ]*github.com/[^/]+/[^/ ]+)')

location = '/git/python-modules/packages/'

def repo_includes_tests(repo):
cmd = ['git', '--git-dir=' + location + repo, 'ls-tree', '-r', 'HEAD', 
'--name-only']
with Popen(cmd, stdout=PIPE, stderr=PIPE) as proc:
for line in proc.stdout:
filename = line.decode('utf-8')[:-1]
if not filename.endswith('.py'):
continue
if filename.startswith('test') or '/test' in filename:
return True
return False

def show_debian_file(repo, filename):
cmd = ['git', '--git-dir=' + location + repo, 'show', 'HEAD:debian/' + 
filename]
return Popen(cmd, stdout=PIPE, stderr=PIPE).stdout.read().decode('utf-8')

def github_urls(content):
github_urls = set()
for line in content.splitlines():
if 'github.com' in line:
m = re_github_url.search(line)
if not m:
print(line)
github_urls.add(m.group(1))
return github_urls

for repo in sorted(os.listdir(location)):
if not repo.endswith('.git') or repo_includes_tests(repo):
continue

urls = (github_urls(show_debian_file(repo, 'copyright'))
or github_urls(show_debian_file(repo, 'watch')))

if len(urls) != 1:
continue
(url,) = urls
try:
page = urlopen(url).read()
except HTTPError:
continue
if ' title="test' not in page.decode('utf-8'):
continue  # no tests in github
print('{:23s} {}'.format(repo[:-4], url))



Test suite in github but missing from pypi tarballs

2016-04-21 Thread Edward Betts
Recently I've come across some Python libraries that have a test suite in
their github repo but don't include it in the tarball they upload to pypi.

Debian binary packages don't normally include the test suite. Some Python
library developers are treating the pypi releases in a similar way, as if
they're just for deployment. They think anybody who needs the test suite is
doing development and will clone from the github repo.

It is very useful to run the test suite when building a Debian package. It
would be better if upstream would include the test suite in their release
tarballs.

It is often just a one line change to MANIFEST.in to have the test suite
included. If the tests are in a directory called 'tests', then this is the
line that needs to added:

  recursive-include tests *.py

I've been sending github pull requests to encourage library authors to make
this change.

  https://github.com/RPi-Distro/python-gpiozero/pull/284
  https://github.com/john-kurkowski/tldextract/pull/97

You might want to take a few minutes to check any Python packages you've
worked on, see if there is a test suite in the github repo that hasn't made it
to the release tarball and send a pull request to fix it.

It is also good thing to check when making a new Debian package.
-- 
Edward.



Bug#820896: ITP: python-hashids -- Python implementation of hashids

2016-04-13 Thread Edward Betts
Package: wnpp
Severity: wishlist
Owner: Edward Betts <edw...@4angle.com>

* Package name: python-hashids
  Version : 1.1.0
  Upstream Author : David Aurelio <d...@david-aurelio.com>
* URL : https://github.com/davidaurelio/hashids-python
* License : MIT
  Programming Lang: Python
  Description : Python implementation of hashids

 A python port of the JavaScript hashids implementation. It generates
 YouTube-like hashes from one or many numbers. Use hashids when you do not
 want to expose your database ids to the user.

I plan to maintain this package as part of the Debian Python Modules Team.
-- 
Edward.



pep8 python module is now in python-pep8 - triggers FTBFS

2016-03-10 Thread Edward Betts
The pep8 python module has moved from the pep8 package to python-pep8.

See https://tracker.debian.org/news/752214

/usr/bin/pep8 is still in the pep8 package but now uses python3-pep8

There are 32 packages with a Build-Depends on pep8. These packages usually
make use of pep8 in their test suites. Many of them will need to be updated to
use python-pep8 instead.

Here is the list of packages with a Build-Depends on pep8.

  actdiag aptdaemon autopkgtest
  backup2swift blockdiag botch breadability byobu
  cloud-init custodia
  d-feet dirspec django-sekizai
  fuzzywuzzy
  genbackupdata
  nwdiag
  obnam ovirt-guest-agent
  prospector pygobject python-apt python-cliapp python-flake8 python-netlib 
python-ttystatus
  seqdiag shortuuid ssh-import-id summain swiftsc syslog-ng
  xcffib

I checked a few of these, in detail:

 - fix for fuzzywuzzy uploaded
 - bug filed for blockdiag
 - fix for django-sekizai pushed to git, e-mailed uploaders

I checked python-ttystatus and obnam. I found they use /usr/bin/pep8 instead of
importing the pep8 module, so they don't need updating.

More examples of pep8 use here:

https://codesearch.debian.net/results/import%20pep8

-- 
Edward.



Bug#816004: RFS: [ITP] python-nameparser/0.3.11-1

2016-02-26 Thread Edward Betts
Package: sponsorship-requests
Severity: wishlist

Dear mentors,

I am looking for a sponsor for my package "python-nameparser"

 * Package name: python-nameparser
   Version : 0.3.11
   Upstream Author : Derek Gulbranson 
 * URL : https://github.com/derek73/python-nameparser
 * License : LGPL-2.1+
   Section : python

It builds those binary packages:

  python-nameparser - Python module for parsing names into individual components
  python3-nameparser - Python module for parsing names into individual 
components (Python 3 version)

To access further information about this package, please visit the following 
URL:

  http://mentors.debian.net/package/python-nameparser

Alternatively, one can download the package with dget using this command:

  dget -x 
http://mentors.debian.net/debian/pool/main/p/python-nameparser/python-nameparser_0.3.11-1.dsc

-- 
Edward.



Bug#815972: ITP: python-nameparser -- module for parsing human names into their in individual components

2016-02-26 Thread Edward Betts
Package: wnpp
Severity: wishlist
Owner: Edward Betts <edw...@4angle.com>

* Package name: python-nameparser
  Version : 0.3.11
  Upstream Author : Derek Gulbranson <dere...@gmail.com>
* URL : https://github.com/derek73/python-nameparser
* License : LGPL-2.1+
  Programming Lang: Python
  Description : module for parsing human names into their in individual 
components

 The HumanName class splits a name string up into name parts based on placement
 in the string and matches against known name pieces like titles. It joins name
 pieces on conjunctions and special prefixes to last names like "del". Titles
 can be chained together and include conjunctions to handle titles like
 "Asst Secretary of State". It can also try to correct capitalization of all
 upper or lowercase names.
 .
 It attempts the best guess that can be made with a simple, rule-based approach.
 Unicode is supported, but the parser is not likely to be useful for languages
 that to not share the same structure as English names. It's not perfect, but it
 gets you pretty far.

I plan to maintain this package as part of the Debian Python Modules Team.
-- 
Edward.



vim-khuno: live Python checking within vim via flakes (in testing)

2015-12-03 Thread Edward Betts
I've packaged a vim plugin that provides live code checking for Python 2 and 3
using pyflakes. Combined with code completion from vim-youcompleteme it makes
vim feel very IDE-like. I often find it pointing out mistakes in my Python
without needing to run the code. vim-khuno is available in testing and
unstable.

https://tracker.debian.org/pkg/vim-khuno

Screencast and documentation available here:

https://github.com/alfredodeza/khuno.vim

I thought this will be of interest to any vim user writing Python.
-- 
Edward.



Bug#781282: ITP: python-fuzzywuzzy -- fuzzy string matching in Python

2015-03-26 Thread Edward Betts
Package: wnpp
Severity: wishlist
Owner: Edward Betts edw...@4angle.com

* Package name: python-fuzzywuzzy
  Version : 0.5.0
  Upstream Author : Adam Cohen a...@seatgeek.com
* URL : https://github.com/seatgeek/fuzzywuzzy
* License : MIT
  Programming Lang: Python
  Description : fuzzy string matching in Python

This module provides various methods for fuzzy matching of strings in Python.

See http://chairnerd.seatgeek.com/fuzzywuzzy-fuzzy-string-matching-in-python/

I plan to maintain it as part of the Debian Python Modules Team.

fuzzywuzzy is a dependency of lettuce, a Cucumber-ish BDD for Python.

I have a package ready to upload to mentors.debian.net
-- 
Edward.


-- 
To UNSUBSCRIBE, email to debian-python-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: https://lists.debian.org/20150326211334.GA30597@x230