Skip to content

Instantly share code, notes, and snippets.

Karthikeyan Singaravelan tirkarthi

Block or report user

Report or block tirkarthi

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View best-practices.md
marp
true

Python best practices

Karthikeyan Singaravelan /(Software Engineer at Platform Portal | Python core developer)/


View dash-cytoscape-example.py
# python -m pip install dash-cytoscape==0.0.5
import dash
import dash_cytoscape as cyto
import dash_html_components as html
import dash_core_components as dcc
from pprint import pprint
from dash.dependencies import Input, Output, State
app = dash.Dash(__name__)
@tirkarthi
tirkarthi / visa-meetup.md
Last active Feb 2, 2020
Slide for visa meetup
View visa-meetup.md
marp
true

CPython development

Karthikeyan Singaravelan (Senior Software Engineer at Visa | Python core developer)


@tirkarthi
tirkarthi / py3_issues.md
Last active Feb 18, 2020
Python 3.8 and 3.9 issues
View py3_issues.md

Do take one issue per person to help others :) Also checkout Fedora tracker for more easy issues : https://bugzilla.redhat.com/show_bug.cgi?id=1785415 . I tried to mark the issues complete but it's more maintenance so sorry if the issue is fixed or already has a PR and is not updated here.

@tirkarthi
tirkarthi / emails_per_hour.py
Created Nov 10, 2019
A script to generate a plot of emails sent by me by hour for CPython to python-bugs mailing list
View emails_per_hour.py
import calendar
from collections import Counter
import datetime
import gzip
import os
from urllib.request import urlretrieve
from urllib.error import HTTPError
import matplotlib.pylab as plt
@tirkarthi
tirkarthi / ast_compare.py
Last active Aug 31, 2019
ast.dump implementation using list of generated strings
View ast_compare.py
import ast
from _ast import *
def dump(node, annotate_fields=True, include_attributes=False, indent=None):
def _format(node, level=0):
if indent is not None:
level += 1
prefix = '\n' + indent * level
sep = ',\n' + indent * level
@tirkarthi
tirkarthi / python-bpo-pr-browser.el
Created Aug 19, 2019
Open the bug and PR for commit under cursor in magit mode
View python-bpo-pr-browser.el
(defun python-bugs-url ()
(interactive)
(let ((commit-message (magit-rev-format "%B"
(magit-rev-parse
(magit-branch-or-commit-at-point))))
(bugs-base-url "https://bugs.python.org/issue")
(pr-base-url "https://github.com/python/cpython/pull/")
(bugs-pr-regex "bpo-\\([0-9]+\\).*\\(GH-\\|#\\)\\([0-9]+\\)"))
(when (string-match bugs-pr-regex commit-message)
(let ((bug-url (concat bugs-base-url (match-string 1 commit-message)))
View CVE_2019_9516.pl
# Empty headers in HTTP/2 streams can cause DoS. A test based on http://hg.nginx.org/nginx-tests .
# Takes around 8 seconds without the patch at https://github.com/nginx/nginx/commit/6dfbc8b1c2116f362bb871efebbf9df576738e89
# Start 2019-08-14 1565776248
# End 2019-08-14 1565776256
# https://www.nginx.com/blog/nginx-updates-mitigate-august-2019-http-2-vulnerabilities/
use POSIX qw/strftime/;
print "Start ", strftime('%Y-%m-%d %s',localtime), " \n";
$s = Test::Nginx::HTTP2->new();
@tirkarthi
tirkarthi / python3.7.1.txt
Created Oct 20, 2018
A list of all NEWS entries for 3.7.1
View python3.7.1.txt
.. bpo: 34970
.. date: 2018-10-13-11-14-13
.. nonce: SrJTY7
.. release date: 2018-10-20
.. section: Library
Protect tasks weak set manipulation in ``asyncio.all_tasks()``
.. bpo: 17239
.. date: 2018-09-11-18-30-55
.. nonce: kOpwK2
View python-close.txt
* To close
** TODO Fixed with another issue https://bugs.python.org/issue26000. Close it as a superseder to https://bugs.python.org/31852
** TODO generate_tokens is made public https://bugs.python.org/issue28418. Close it as rejected with https://bugs.python.org/issue12486
** TODO Fixed with another issue https://bugs.python.org/issue26144. Close it as a superseder to https://bugs.python.org/issue34200
** TODO Patch already applied and hence close this https://bugs.python.org/issue23584
** TODO Propose closing https://bugs.python.org/issue26452 since improvements were made with https://bugs.python.org/issue12458 making original issue invalid
** TODO Propose closing since 2.7.x is in bug fix mode https://bugs.python.org/issue24063
** Propose to close https://bugs.python.org/issue33309
** Propose to close as documentation is correct https://bugs.python.org/issue33117
You can’t perform that action at this time.