Skip to content

Instantly share code, notes, and snippets.

🍇
Doing grape, thanks for asking.

M. de Verteuil mverteuil

🍇
Doing grape, thanks for asking.
View GitHub Profile
@mverteuil
mverteuil / settings.py
Created Jan 23, 2020
Run Django Tests without HTTP(S) functionality to ensure sandboxed requests
View settings.py
# 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 Oct 8, 2019
Added to docker-compose step as an additional "-f", it will enable running tests from within the container in PyCharm.
View pycharm-helpers.yml
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 — forked from prwhite/Makefile
Add a help target to a Makefile that will allow all targets to be self documenting
View Makefile
# 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
Enable the equivalent of ./manage.py shell_plus under PyCharm's Django Console.
View shell_plus_for_pycharm_django_console.py
# 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 Apr 4, 2019
Python Installation Solutions
View facts.md

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 Oct 25, 2018 — forked from lucko/auto-sign-commits-mac.md
Auto-sign commits with IntelliJ on MacOS
View auto-sign-commits-mac.md

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 / notes.md
Created Feb 12, 2018
Python3 Upgrade Notes
View notes.md

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
View test_adder.py
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.')
View rangoli.py
def rangoli(size):
width = size * 4 - 3
chars = list(string.ascii_lowercase[:size])
chars.reverse()
for row in range(1, size + 1):
chars_left = ''.join(chars[0:row])
chars_right = ''.join(reversed(chars_left[:-1]))
print '-'.join(chars_left + chars_right).center(width, '-')
for row in reversed(range(1, size)):
chars_left = ''.join(chars[0:row])
@mverteuil
mverteuil / skillup.lua
Created Mar 21, 2016
Work in progress
View skillup.lua
require('luau')
-- Variables
MAGIC_LIST = {
"Protect III",
"Shell III",
"Ice Spikes",
"Blaze Spikes",
"Phalanx",
"Stoneskin",
You can’t perform that action at this time.