• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

paylogic / pip-accel / 56 / 3
86%
master: 92%

Build:
Build:
LAST BUILD BRANCH: windows-support
DEFAULT BRANCH: master
Ran 16 Nov 2014 06:11PM UTC
Files 12
Run time 6s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

16 Nov 2014 06:04PM UTC coverage: 85.965%. First build
56.3

push

travis-ci

xolox
Refactor all the things!

On a more serious note:

* I originally wrote pip-accel as a collection of functions that took
  their configuration defaults from environment variables interpreted at
  module import time (yes, I know, very ugly, I learned my lesson on
  that one!)

* Then pip-accel became more and more complex and soon I was passing
  huge blobs of state back and forth between these "standalone"
  functions. Passing all of that state back and forth quickly became
  unwieldy but fixing it would require a big rewrite of pip-accel.

* I didn't feel up to the task of a big rewrite without more test
  coverage but I also didn't feel like extending the test suite because
  that had become a very ugly affair because of the environment
  variables.

* Given the points above you can see how I very uncomfortably painted
  myself into a corner on this one :-)

The solution was to sit down for a very long weekend and, well, refactor
all the things! (based on an actual planning, believe it or not :-)

The result:

* The "new" pip-accel is written in OOP and uses dependency injection to
  make sure that testers/embedders/extenders can comfortably inject
  their customized configuration into pip-accel without ugly tricks.

* Because pip-accel mirrors pip's command line interface there isn't any
  room to add custom command line options (a bit awkward). This explains
  why environment variables were used until now (a bit awkward as well
  :-). I've long wanted to add support for configuration files (as
  requested in issue #41) but that was non trivial to add before this
  refactoring. Based on the new pip-accel it should be more or less
  trivial to add support for configuration files! :-)

  See also issue #41 on GitHub:
  https://github.com/paylogic/pip-accel/issues/41

* I tried to improve the documentation as I went along because my goal
  is for pip-accel to be an easy to use API for pip and the binary
  distribution aspect that pip-accel adds to the... (continued)

686 of 798 relevant lines covered (85.96%)

0.86 hits per line

Source Files on job 56.3
  • Tree
  • List 0
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 56
  • Travis Job 56.3
  • ffe1f19e on github
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc