Skip to content

Instantly share code, notes, and snippets.

View mverteuil's full-sized avatar
🍇
Doing grape, thanks for asking.

M. de Verteuil mverteuil

🍇
Doing grape, thanks for asking.
View GitHub Profile
[tox]
isolated_build = True
envlist = py{38,39}-django{20,21,22,30,31,32},py310-django{21,22,30,31,32}
requires =
tox-poetry-installer[poetry] == 0.8.1
tox-py == 1.1.0
[tox:.package]
basepython = python3
@mverteuil
mverteuil / gist:50e9f604592852c79f404dfaf3a62f70
Created November 26, 2020 17:28
Rebase with pre-commit checks before each commit
git rebase -x 'git reset --soft HEAD~1 && git commit -C HEAD@{1}' -i target_branch_or_commit
@mverteuil
mverteuil / settings.py
Created January 23, 2020 18:52
Run Django Tests without HTTP(S) functionality to ensure sandboxed requests
# Block HTTP(S) in test suites
# ============================
#
# Tested with dependencies:
# - Django 1.10-2.x (may work on future versions)
# - future 0.17.1+
# - Python 2.7.x,3.7.x
# - py.test
# - nose
@mverteuil
mverteuil / pycharm-helpers.yml
Created October 8, 2019 16:07
Added to docker-compose step as an additional "-f", it will enable running tests from within the container in PyCharm.
version: "3.0"
services:
web:
volumes:
- pycharm_helpers_PY-191.7479.30:/opt/.pycharm_helpers
volumes:
pycharm_helpers_PY-191.7479.30: {}
@mverteuil
mverteuil / Makefile
Created May 24, 2019 22:24 — forked from prwhite/Makefile
Add a help target to a Makefile that will allow all targets to be self documenting
# Add the following 'help' target to your Makefile
# And add help text after each target name starting with '\#\#'
help: ## Show this help.
@fgrep -h "##" $(MAKEFILE_LIST) | fgrep -v fgrep | sed -e 's/\\$$//' | sed -e 's/##//'
# Everything below is an example
target00: ## This message will show up when typing 'make help'
@echo does nothing
@mverteuil
mverteuil / shell_plus_for_pycharm_django_console.py
Last active May 10, 2019 00:54
Enable the equivalent of ./manage.py shell_plus under PyCharm's Django Console.
# Confirmed working under:
# - Python3.7 / Django 2.2 / Django Extensions / IPython Available
# - Python3.7 / Django 2.2 / Django Extensions / IPython Unavailable
#
# Notices:
# - This might even work in PyCharm CE with the python console, but no guarantees there.
# - There are no language features required that shouldn't be available as far back as python2.6, maybe 2.5.
# - There are no framework features required that shouldn't be available as far back as Django 1.7
# - Should still provide basic Django shell when Django Extensions is unavailable.
# - This is for all of my friends to enjoy!
@mverteuil
mverteuil / facts.md
Created April 4, 2019 16:54
Python Installation Solutions

No sqlite? No problem!

CFLAGS="-I$(xcrun --show-sdk-path)/usr/include"

No zlib, but zlib installed? No problem!

CPPFLAGS="-I$(brew --prefix zlib)/include"

@mverteuil
mverteuil / auto-sign-commits-mac.md
Created October 25, 2018 20:48 — forked from lucko/auto-sign-commits-mac.md
Auto-sign commits with IntelliJ on MacOS

Run:

  • brew install gnupg gnupg2 pinentry-mac
  • git config --global user.signingkey <key>
  • git config --global commit.gpgsign true
  • git config --global gpg.program gpg

Followed by:

  • nano ~/.gnupg/gpg.conf
@mverteuil
mverteuil / test_adder.py
Created April 19, 2017 15:40
BDD Style Tests
from decimal import Decimal as D
from numbers import Number
from django.test import TestCase
class Adder(object):
def __init__(self, addend, augend):
if not (isinstance(addend, Number) or isinstance(augend, Number)):
raise TypeError('Adder requires both addend and augend to be Numbers.')
@mverteuil
mverteuil / notes.md
Created February 12, 2018 21:54
Python3 Upgrade Notes

General

  • Don't fork to a new branch, it will be impossible to merge back
  • If only a handful of developers work on the branch, nobody else is comfortable writing python3 when you're ready to go
  • You need to have a two-language compatible codebase

Stages

  1. Third-party compatibility first
  • No new dependencies without Py3 support