Skip to content

Instantly share code, notes, and snippets.

View abravalheri's full-sized avatar
💭
😆

Anderson Bravalheri abravalheri

💭
😆
  • University of Bristol
  • Bristol, UK
View GitHub Profile
from flit_core.buildapi import *
@abravalheri
abravalheri / .gitignore
Last active June 20, 2022 18:48
Simple profiling script to verify `setuptools` execution time.
.venv
build
dist
*.pstats
*.html
*.egg-info
@abravalheri
abravalheri / 0_disclaimer.md
Last active April 20, 2022 15:05
How to implement Namespace packages via `MetaPathFinder`?

Please note that the implementations here are simple PoCs, and is subject to implementation errors, bugs, over simplifications etc..

@abravalheri
abravalheri / !Dummy rst2myst example for issue.md
Last active September 11, 2021 14:56
Dummy `rst2myst` example for issue

dummy-rst2myst-example-for-issue

This repository demonstrates an issue with the rst2myst conversion tool.

Issue

The way rst2myst translates rst substitutions to Markdown does not seem to work properly. So far 2 inconsistencies have been identified:

title published description tags cover_image
PyScaffold 4.0 is here 🔥
false
PyScaffold, the Python project template generator with batteries included, just released a new version with lots of new features and it is even easier to use!
python
packaging
opensource
news

It has been a long journey since PyScaffold v3 was released and a lot of things happened in the Python community especially regarding the packaging ecosystem...

@abravalheri
abravalheri / .sphinx-issue-README.md
Last active August 6, 2020 23:10
Example for sphinx issue

Describe the bug Hello, I have 3 muiltiline docstrings for type aliases (using the next-line """ documentation syntax). For 1 one them the docstring is correctly shown in the rendered HTML, but for 2 of them, the docstrings are ignored and the only thing shown is the alias of ... text. I suppose this is related to #4422, but I might be doing something wrong here (so if you could point me out in the correct direction that would be very good).

To Reproduce The following is a reduced example of something happening in pyscaffold's code base:

  1. Given a directory with file.py:
# file.py
from pathlib import Path
git config --global alias.lola "log --graph --decorate --pretty=oneline --abbrev-commit --all"
@abravalheri
abravalheri / _poke.py
Last active May 9, 2017 13:16
ASCII ANSI Pokemon
#!/usr/bin/env python3
import io
# Separete the 3 ASCII/ANSI art pokemons originally from
# https://github.com/roberoonska/dotfiles/blob/master/colorscripts/poke
INTRO = """\
#!/bin/sh
initializeANSI()
@abravalheri
abravalheri / import.m
Created January 19, 2017 15:10 — forked from jaeandersson/import.m
Import a package into Octave using the syntax "import packagename.*"
function import(varargin)
% Import a package. Only entire packages can be imported currently.
error(nargchk(1, inf, nargin, 'struct'));
% Import the packages one-by-one
for i=1:nargin
import1(varargin{i});
end
end
function import1(pkgname)

A variation of the Observer pattern have emerged over the past few yes in the JavaScript community. Called Event Emitter, this pattern seems to simplify the implementation and usage of events.

This is especially true for lightweight libraries in dynamic languages, such as Smoke Signals, where there is no Event object. Instead, plain strings are used to notify the event handlers, which are simple callback functions. The influence of jQuery in this pattern is also remarkable: the features can be accessed in an expressive way with short named methods.