Archive

Archive for the ‘python’ Category

http://testandcode.com/

May 4, 2017 Leave a comment

ABOUT THE SHOW

How did you become a software developer/tester/engineer/lead, etc?
Odds are we all are missing some important information to do our jobs most effectively.

This podcast is an attempt to fill those education gaps.
I focus on testing and process questions like “How do I know it works?”, “How do I effectively test?”, and the like.

But really, anything in the software development realm is fair game.

http://testandcode.com/episodes

Categories: Interesting, python Tags: ,

Writing functional python

March 29, 2017 Leave a comment

The recent buzz surrounding Functional Programming (FP for short) is well deserved. Languages like Haskell and Clojure in use by big name companies such as Barclays Captial, Atlassian, and Walmart have helped FP ideas gain a major foothold in the industry. I am a Clojure hobbyist who has been interested in FP for some time so this is great news to me. But what exactly is FP, and why should a Python/Django programmer care? First, understanding FP will help you bring these sought-after ideas into your Python development. Second, you will quite likely begin to recognize instances where you have already been using these concepts, unknowingly!

Read more here -> https://www.imagescape.com/blog/2017/01/26/writing-functional-python/

pip failed to install package

March 17, 2017 Leave a comment

Note to future self:

When installing a python package in a virtualenv using pip ie

pip install -r requirements.txt

If it fails to build and gives an error about something or the other.
Do a pip freeze and do a diff between what was installed and what is listed in requirements.txt

If there is a diff. Upgrade your pip version.

sudo pip install --upgrade pip

Try running the install again.

Categories: python Tags:

How to Run Python Tests “Continuously” While Coding

March 17, 2017 Leave a comment

Last week I was doing some Test Driven Development training and overheard someone mention another programming language that had a test runner that you could set up to watch your project directory and run your tests when the files changed.

http://www.blog.pythonlibrary.org/2017/03/14/how-to-run-python-tests-continuously-while-coding/

Categories: Interesting, python

QuickFix

December 21, 2016 Leave a comment

quickfix-window

QuickFix is designed to display compiler errors — a list of errors is displayed and can be selected to jump to a specific file and line.

:cn — Go to the next location in the list
:cp — Go to the previous location
:ccl — Close the quickfix window

Depending on where your quickfix window is. You can use below keys to move in and out of the window. (If quickfix window is at the bottom part of your screen)
CTRL-w + j — Move into the quickfix window
CTRL-w + k — Move out of the quickfix window

The window commands will work here. See link in source section below for more details.

Source:
http://usevim.com/2012/08/24/vim101-quickfix/
http://vimdoc.sourceforge.net/htmldoc/quickfix.html#quickfix
http://vimdoc.sourceforge.net/htmldoc/windows.html#windows

Categories: python, vim Tags:

pip – ValueError: (‘Expected version spec in’…

December 20, 2016 Leave a comment

Problem:
I was not able to install a package from pip.

$ pip -V
pip 1.5.4 from /home/vagrant/envs/projects/local/lib/python2.7/site-packages (python 2.7)

$ less requirements.txt
--extra-index-url http://repository.example.com:6543/pypi/
--trusted-host repository.example.com

SQLAlchemy==1.1.4
flake8==3.2.1
mccabe==0.5.3
psycopg2==2.6.2
pyflakes==1.3.0
custom-application-from-repository==0.1.0

$ pip -r requirements.txt
Exception:
Traceback (most recent call last):
  File "/home/vagrant/envs/projects/local/lib/python2.7/site-packages/pip/basecommand.py", line 122, in main
    status = self.run(options, args)
  File "/home/vagrant/envs/projects/local/lib/python2.7/site-packages/pip/commands/install.py", line 262, in run
    for req in parse_requirements(filename, finder=finder, options=options, session=session):
  File "/home/vagrant/envs/projects/local/lib/python2.7/site-packages/pip/req.py", line 1631, in parse_requirements
    req = InstallRequirement.from_line(line, comes_from, prereleases=getattr(options, "pre", None))
  File "/home/vagrant/envs/projects/local/lib/python2.7/site-packages/pip/req.py", line 172, in from_line
    return cls(req, comes_from, url=url, prereleases=prereleases)
  File "/home/vagrant/envs/projects/local/lib/python2.7/site-packages/pip/req.py", line 70, in __init__
    req = pkg_resources.Requirement.parse(req)
  File "/home/vagrant/envs/projects/local/lib/python2.7/site-packages/pip/_vendor/pkg_resources.py", line 2606, in parse
    reqs = list(parse_requirements(s))
  File "/home/vagrant/envs/projects/local/lib/python2.7/site-packages/pip/_vendor/pkg_resources.py", line 2544, in parse_requirements
    line, p, specs = scan_list(VERSION,LINE_END,line,p,(1,2),"version spec")
  File "/home/vagrant/envs/projects/local/lib/python2.7/site-packages/pip/_vendor/pkg_resources.py", line 2512, in scan_list
    raise ValueError("Expected "+item_name+" in",line,"at",line[p:])
ValueError: ('Expected version spec in', '--trusted-host repository.example.com', 'at', ' repository.example.com')

Storing debug log for failure in /home/vagrant/.pip/pip.log

Solution:
1. Upgrade pip. The version I was using does not accept the extra parameters specified in requirements.txt

$ pip -U install pip

2. Now run pip install command again.

Note:
1. Using a vagrant box running ubuntu trusty.

dh-virtualenv

December 15, 2016 Leave a comment

What is dh-virtualenv
dh-virtualenv is a tool that aims to combine Debian packaging with self-contained virtualenv based Python deployments.

http://dh-virtualenv.readthedocs.io/en/latest/index.html

Categories: Interesting, python