Skip to content

Commit 398b524

Browse files
committed
Initial commit
0 parents  commit 398b524

File tree

17 files changed

+379
-0
lines changed

17 files changed

+379
-0
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
.venv
2+
__pycache__

README.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# DRD (Deletions Record Daemon)
2+
3+
Seeing as warehouse does not yet have a feed of packages removed, this lets us
4+
keep track of when deletions are recorded using publicly-accessible metadata.
5+
6+
Updates are very quick, and occur in a repo such that you can `git commit -a; git
7+
push` afterward.
8+
9+
This is live at http://drd.nonstandards.org/simple/ as a PEP 503 mirror
10+
(additionally with the default json as well).
11+
12+
# Cache storage
13+
14+
The on-disk format is shared with [honesty](https://pypi.org/project/honesty/)
15+
with some additions. We do not do traditional cache fetches with etag, instead
16+
relying on the serials. If you need to do an initial fetch, use
17+
`scripts/refresh.py --force` the first time (before `~/.cache/honesty/serials`
18+
has any files).
19+
20+
# How to run
21+
22+
Make sure that `~/.cache/honesty` is preserved between runs, and run
23+
24+
```
25+
scripts/refresh.py
26+
```
27+
28+
from the git checkout. You can then `git commit -a -m ...; git push` if you
29+
want to update the git repo.
30+
31+
I plan to make it possible to annotate deletions as to whether they were
32+
malicious or not, but this is future work.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"info":{"author":"Tennessee Leeuwenburg","author_email":"[email protected]","bugtrack_url":null,"classifiers":["Development Status :: 3 - Alpha","Intended Audience :: Developers","License :: OSI Approved :: Apache Software License","Natural Language :: English","Operating System :: OS Independent","Programming Language :: Python :: 2"],"description":"UNKNOWN","description_content_type":null,"docs_url":null,"download_url":"UNKNOWN","downloads":{"last_day":-1,"last_month":-1,"last_week":-1},"home_page":"https://bitbucket.org/tleeuwenburg/benchmarker.py","keywords":"benchmarking,profiling","license":"Apache License 2.0","maintainer":null,"maintainer_email":null,"name":"benchmarker.py","package_url":"https://pypi.org/project/benchmarker.py/","platform":"UNKNOWN","project_url":"https://pypi.org/project/benchmarker.py/","project_urls":{"Download":"UNKNOWN","Homepage":"https://bitbucket.org/tleeuwenburg/benchmarker.py"},"release_url":"https://pypi.org/project/benchmarker.py/0.31/","requires_dist":null,"requires_python":null,"summary":"Benchmarking for basically no effort.","version":"0.31"},"last_serial":786796,"releases":{"0.22":[{"comment_text":"","digests":{"md5":"b500ef6b1163697bf2989908b7af99eb","sha256":"b6b47235cb0652f207f2146f5e2ed4891fecf3831749668bd990562b46df08b6"},"downloads":-1,"filename":"benchmarker.py-0.22.tar.gz","has_sig":false,"md5_digest":"b500ef6b1163697bf2989908b7af99eb","packagetype":"sdist","python_version":"source","requires_python":null,"size":7136,"upload_time":"2011-05-08T12:37:24","upload_time_iso_8601":"2011-05-08T12:37:24.880959Z","url":"https://files.pythonhosted.org/packages/18/4e/ef0311fbb54a170a1c06fea022db7fcf115a4e57de929e501627062c206e/benchmarker.py-0.22.tar.gz"}],"0.31":[{"comment_text":"","digests":{"md5":"e773f8771f46f99b6bbe6e84448edf99","sha256":"c40fd1bab3914d01279c29d03799a7d012b9382c0ab8e334950568a590c74346"},"downloads":-1,"filename":"benchmarker.py-0.31.tar.gz","has_sig":false,"md5_digest":"e773f8771f46f99b6bbe6e84448edf99","packagetype":"sdist","python_version":"source","requires_python":null,"size":9551,"upload_time":"2011-08-02T06:50:28","upload_time_iso_8601":"2011-08-02T06:50:28.774637Z","url":"https://files.pythonhosted.org/packages/f2/b8/48fae94dcd3c881478db3960fb32e601ac30fdef1e98e9e3c467d3ab0abb/benchmarker.py-0.31.tar.gz"}]},"urls":[{"comment_text":"","digests":{"md5":"e773f8771f46f99b6bbe6e84448edf99","sha256":"c40fd1bab3914d01279c29d03799a7d012b9382c0ab8e334950568a590c74346"},"downloads":-1,"filename":"benchmarker.py-0.31.tar.gz","has_sig":false,"md5_digest":"e773f8771f46f99b6bbe6e84448edf99","packagetype":"sdist","python_version":"source","requires_python":null,"size":9551,"upload_time":"2011-08-02T06:50:28","upload_time_iso_8601":"2011-08-02T06:50:28.774637Z","url":"https://files.pythonhosted.org/packages/f2/b8/48fae94dcd3c881478db3960fb32e601ac30fdef1e98e9e3c467d3ab0abb/benchmarker.py-0.31.tar.gz"}]}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"info":{"author":"Kevin Galligan","author_email":"[email protected]","bugtrack_url":null,"classifiers":["Intended Audience :: Developers","License :: OSI Approved :: MIT License","Operating System :: OS Independent","Programming Language :: Python","Programming Language :: Python :: 3","Topic :: Software Development :: Libraries :: Python Modules"],"description":"","description_content_type":"","docs_url":null,"download_url":"","downloads":{"last_day":-1,"last_month":-1,"last_week":-1},"home_page":"https://github.com/Kevinpgalligan/EmojipastaBot","keywords":"","license":"","maintainer":"","maintainer_email":"","name":"emojipastabot","package_url":"https://pypi.org/project/emojipastabot/","platform":"","project_url":"https://pypi.org/project/emojipastabot/","project_urls":{"Homepage":"https://github.com/Kevinpgalligan/EmojipastaBot"},"release_url":"https://pypi.org/project/emojipastabot/1.0.0/","requires_dist":null,"requires_python":"","summary":"Generate emojipasta from text.","version":"1.0.0"},"last_serial":3753796,"releases":{"1.0.0":[{"comment_text":"","digests":{"md5":"a342292bf6d9e5e9d503795eda7009c9","sha256":"db77f6578a18918518b3e3256d7ea88dcdb23a6229a460efc20ec1438633c934"},"downloads":-1,"filename":"emojipastabot-1.0.0-py3.6.egg","has_sig":false,"md5_digest":"a342292bf6d9e5e9d503795eda7009c9","packagetype":"bdist_egg","python_version":"3.6","requires_python":null,"size":19651,"upload_time":"2018-04-10T21:47:18","upload_time_iso_8601":"2018-04-10T21:47:18.983357Z","url":"https://files.pythonhosted.org/packages/11/1d/876bd0bebe23b07ecd48319bff08317925a29d479b62226e21e0e44af369/emojipastabot-1.0.0-py3.6.egg"}]},"urls":[{"comment_text":"","digests":{"md5":"a342292bf6d9e5e9d503795eda7009c9","sha256":"db77f6578a18918518b3e3256d7ea88dcdb23a6229a460efc20ec1438633c934"},"downloads":-1,"filename":"emojipastabot-1.0.0-py3.6.egg","has_sig":false,"md5_digest":"a342292bf6d9e5e9d503795eda7009c9","packagetype":"bdist_egg","python_version":"3.6","requires_python":null,"size":19651,"upload_time":"2018-04-10T21:47:18","upload_time_iso_8601":"2018-04-10T21:47:18.983357Z","url":"https://files.pythonhosted.org/packages/11/1d/876bd0bebe23b07ecd48319bff08317925a29d479b62226e21e0e44af369/emojipastabot-1.0.0-py3.6.egg"}]}

data/deleted-metadata/getsys/json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"info":{"author":"THAVASI_GTI","author_email":"[email protected]","bugtrack_url":null,"classifiers":["License :: OSI Approved :: MIT License","Operating System :: OS Independent","Programming Language :: Python :: 3"],"description":"# __pypi__\n\n\n","description_content_type":"text/markdown","docs_url":null,"download_url":"","downloads":{"last_day":-1,"last_month":-1,"last_week":-1},"home_page":"https://github.com/THAVASIGTI/__pypi__","keywords":"","license":"","maintainer":"","maintainer_email":"","name":"getSys","package_url":"https://pypi.org/project/getSys/","platform":"","project_url":"https://pypi.org/project/getSys/","project_urls":{"Homepage":"https://github.com/THAVASIGTI/__pypi__"},"release_url":"https://pypi.org/project/getSys/0.0.1/","requires_dist":null,"requires_python":">=3.6","summary":"all to one woring module pack","version":"0.0.1"},"last_serial":6258862,"releases":{"0.0.1":[{"comment_text":"","digests":{"md5":"a62d70daefa35441aee87adb0f8fa073","sha256":"afd153236ba91e504c4acc37582aeaa23bec059043bbf3a92aeb21e57847612e"},"downloads":-1,"filename":"getSys-0.0.1-py3-none-any.whl","has_sig":false,"md5_digest":"a62d70daefa35441aee87adb0f8fa073","packagetype":"bdist_wheel","python_version":"py3","requires_python":">=3.6","size":1188,"upload_time":"2019-12-07T17:07:31","upload_time_iso_8601":"2019-12-07T17:07:31.725635Z","url":"https://files.pythonhosted.org/packages/ca/b9/e6af553420b4f8b348019199f19f868348ea1ca690c70817791b5dc65c98/getSys-0.0.1-py3-none-any.whl"},{"comment_text":"","digests":{"md5":"c93b6f66d5c04235cd6234739e3efc36","sha256":"32a5286245c674d7ef454c2fb8568196acc81504b5c0d6453c5b86d3544daa0d"},"downloads":-1,"filename":"getSys-0.0.1.tar.gz","has_sig":false,"md5_digest":"c93b6f66d5c04235cd6234739e3efc36","packagetype":"sdist","python_version":"source","requires_python":">=3.6","size":1005,"upload_time":"2019-12-07T17:07:33","upload_time_iso_8601":"2019-12-07T17:07:33.742187Z","url":"https://files.pythonhosted.org/packages/b8/79/df4e3c50e3b0317a8fc2b3668c71e5c7bb4c2dcec4f0eb6c8869deea13ad/getSys-0.0.1.tar.gz"}]},"urls":[{"comment_text":"","digests":{"md5":"a62d70daefa35441aee87adb0f8fa073","sha256":"afd153236ba91e504c4acc37582aeaa23bec059043bbf3a92aeb21e57847612e"},"downloads":-1,"filename":"getSys-0.0.1-py3-none-any.whl","has_sig":false,"md5_digest":"a62d70daefa35441aee87adb0f8fa073","packagetype":"bdist_wheel","python_version":"py3","requires_python":">=3.6","size":1188,"upload_time":"2019-12-07T17:07:31","upload_time_iso_8601":"2019-12-07T17:07:31.725635Z","url":"https://files.pythonhosted.org/packages/ca/b9/e6af553420b4f8b348019199f19f868348ea1ca690c70817791b5dc65c98/getSys-0.0.1-py3-none-any.whl"},{"comment_text":"","digests":{"md5":"c93b6f66d5c04235cd6234739e3efc36","sha256":"32a5286245c674d7ef454c2fb8568196acc81504b5c0d6453c5b86d3544daa0d"},"downloads":-1,"filename":"getSys-0.0.1.tar.gz","has_sig":false,"md5_digest":"c93b6f66d5c04235cd6234739e3efc36","packagetype":"sdist","python_version":"source","requires_python":">=3.6","size":1005,"upload_time":"2019-12-07T17:07:33","upload_time_iso_8601":"2019-12-07T17:07:33.742187Z","url":"https://files.pythonhosted.org/packages/b8/79/df4e3c50e3b0317a8fc2b3668c71e5c7bb4c2dcec4f0eb6c8869deea13ad/getSys-0.0.1.tar.gz"}]}

data/deleted-metadata/kcli/json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

data/deleted-metadata/ovirt/json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"info":{"author":"Karim Boumedhel","author_email":"[email protected]","bugtrack_url":null,"classifiers":[],"description":"UNKNOWN","description_content_type":null,"docs_url":null,"download_url":"UNKNOWN","downloads":{"last_day":-1,"last_month":-1,"last_week":-1},"home_page":"http://github.com/karmab/ovirt","keywords":null,"license":"GPL","maintainer":null,"maintainer_email":null,"name":"ovirt","package_url":"https://pypi.org/project/ovirt/","platform":"UNKNOWN","project_url":"https://pypi.org/project/ovirt/","project_urls":{"Download":"UNKNOWN","Homepage":"http://github.com/karmab/ovirt"},"release_url":"https://pypi.org/project/ovirt/1.2.13/","requires_dist":null,"requires_python":null,"summary":"Script to manage ovirt engine","version":"1.2.13"},"last_serial":2371901,"releases":{"1.2.13":[{"comment_text":"","digests":{"md5":"197eaa205325a7c4a1c34193d2a48826","sha256":"87b7a30b24f8127c05a2c04524aa5f109aa39d232f930e73db6f930354ce2e0f"},"downloads":-1,"filename":"ovirt-1.2.13.tar.gz","has_sig":false,"md5_digest":"197eaa205325a7c4a1c34193d2a48826","packagetype":"sdist","python_version":"source","requires_python":null,"size":19581,"upload_time":"2016-09-18T15:46:35","upload_time_iso_8601":"2016-09-18T15:46:35.598634Z","url":"https://files.pythonhosted.org/packages/81/94/3d9f050dcb97e7eb9777cc7ea06aac39cb406f0fb0f396dc052cb1cc0c23/ovirt-1.2.13.tar.gz"}]},"urls":[{"comment_text":"","digests":{"md5":"197eaa205325a7c4a1c34193d2a48826","sha256":"87b7a30b24f8127c05a2c04524aa5f109aa39d232f930e73db6f930354ce2e0f"},"downloads":-1,"filename":"ovirt-1.2.13.tar.gz","has_sig":false,"md5_digest":"197eaa205325a7c4a1c34193d2a48826","packagetype":"sdist","python_version":"source","requires_python":null,"size":19581,"upload_time":"2016-09-18T15:46:35","upload_time_iso_8601":"2016-09-18T15:46:35.598634Z","url":"https://files.pythonhosted.org/packages/81/94/3d9f050dcb97e7eb9777cc7ea06aac39cb406f0fb0f396dc052cb1cc0c23/ovirt-1.2.13.tar.gz"}]}

data/deleted-metadata/rikacsv/json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"info":{"author":"Rika_mxlm","author_email":"[email protected]","bugtrack_url":null,"classifiers":[],"description":"","description_content_type":"","docs_url":null,"download_url":"","downloads":{"last_day":-1,"last_month":-1,"last_week":-1},"home_page":"","keywords":"","license":"","maintainer":"","maintainer_email":"","name":"RikaCSV","package_url":"https://pypi.org/project/RikaCSV/","platform":"any","project_url":"https://pypi.org/project/RikaCSV/","project_urls":null,"release_url":"https://pypi.org/project/RikaCSV/1.4.6/","requires_dist":null,"requires_python":"","summary":"","version":"1.4.6"},"last_serial":6214266,"releases":{"1.4":[{"comment_text":"","digests":{"md5":"5ad01d72b4b139e159ba77b32fc51602","sha256":"68129594fa0cee86531a74bd24bbabd3b564e34facd02b699722cdf05e666468"},"downloads":-1,"filename":"RikaCSV-1.4.tar.gz","has_sig":false,"md5_digest":"5ad01d72b4b139e159ba77b32fc51602","packagetype":"sdist","python_version":"source","requires_python":null,"size":1310,"upload_time":"2019-11-28T13:20:03","upload_time_iso_8601":"2019-11-28T13:20:03.469675Z","url":"https://files.pythonhosted.org/packages/8f/36/f9380c6ab19e1ee669e70319e14af911cd2272a633857fab75fdb5370d2f/RikaCSV-1.4.tar.gz"}],"1.4.1":[{"comment_text":"","digests":{"md5":"986909ddd7a16c6f5916d3ccaf4d74ca","sha256":"f776a628599ee4191b30c09f960e035df23eb08fd6caf90b813b1eb50b62371b"},"downloads":-1,"filename":"RikaCSV-1.4.1.tar.gz","has_sig":false,"md5_digest":"986909ddd7a16c6f5916d3ccaf4d74ca","packagetype":"sdist","python_version":"source","requires_python":null,"size":1415,"upload_time":"2019-11-28T13:30:03","upload_time_iso_8601":"2019-11-28T13:30:03.459385Z","url":"https://files.pythonhosted.org/packages/e0/df/ed357a457f4816ecd773cecb738b3eb5590525f11f116179fb295706c751/RikaCSV-1.4.1.tar.gz"}],"1.4.2":[{"comment_text":"","digests":{"md5":"7b3fa5accd6d7c24be5747b0db9d062a","sha256":"2518733d0302974326d2eebff748f75ca561849932fc4ec3399631c4f3557704"},"downloads":-1,"filename":"RikaCSV-1.4.2.tar.gz","has_sig":false,"md5_digest":"7b3fa5accd6d7c24be5747b0db9d062a","packagetype":"sdist","python_version":"source","requires_python":null,"size":1477,"upload_time":"2019-11-28T13:31:44","upload_time_iso_8601":"2019-11-28T13:31:44.740194Z","url":"https://files.pythonhosted.org/packages/36/68/3c01b6a83357c8deca56985332a0158668ad954821fefa859636c63d8adf/RikaCSV-1.4.2.tar.gz"}],"1.4.3":[{"comment_text":"","digests":{"md5":"6835fb11e8da0891c8dab24ee6dc359f","sha256":"f32a6427e3effb30170178691a11558375fac916226c776f69a706dc42bb9b4b"},"downloads":-1,"filename":"RikaCSV-1.4.3.tar.gz","has_sig":false,"md5_digest":"6835fb11e8da0891c8dab24ee6dc359f","packagetype":"sdist","python_version":"source","requires_python":null,"size":949,"upload_time":"2019-11-28T13:37:21","upload_time_iso_8601":"2019-11-28T13:37:21.570090Z","url":"https://files.pythonhosted.org/packages/71/d0/35338854c7a64c3263e7867ad8a3cfae525fed7b1a10878dd6e1804bb618/RikaCSV-1.4.3.tar.gz"}],"1.4.4":[{"comment_text":"","digests":{"md5":"4dd3f8a7503c292327437f7db3324184","sha256":"b29fa0b0dd6ea5d01fbed799680cd2e8dce9874fa11bb18fceef78da16b4f8b1"},"downloads":-1,"filename":"RikaCSV-1.4.4.tar.gz","has_sig":false,"md5_digest":"4dd3f8a7503c292327437f7db3324184","packagetype":"sdist","python_version":"source","requires_python":null,"size":949,"upload_time":"2019-11-28T13:43:06","upload_time_iso_8601":"2019-11-28T13:43:06.827527Z","url":"https://files.pythonhosted.org/packages/72/f9/49ed643ee90ad0f3d8b2c600b1c5126fd4cfefec6a35dad080e37ff57f78/RikaCSV-1.4.4.tar.gz"}],"1.4.5":[{"comment_text":"","digests":{"md5":"1f3dcd54bf254a1f9089147096e3cc58","sha256":"52727df155c6691f0714c83d5303d1c396e5af29e5e06d83c776508c5d9cb5bb"},"downloads":-1,"filename":"RikaCSV-1.4.5.tar.gz","has_sig":false,"md5_digest":"1f3dcd54bf254a1f9089147096e3cc58","packagetype":"sdist","python_version":"source","requires_python":null,"size":1385,"upload_time":"2019-11-28T13:47:04","upload_time_iso_8601":"2019-11-28T13:47:04.507144Z","url":"https://files.pythonhosted.org/packages/82/98/d0ad3d6466485217c73ed35ba407d8b4e4395f79672ce5058fcc609df565/RikaCSV-1.4.5.tar.gz"}],"1.4.6":[{"comment_text":"","digests":{"md5":"3fafefcd2eb9af43e522037b7a2d06a4","sha256":"6b5aa5699f545fb50e09217d04f23e1b1b813517aed2da90a6c619dec4b3ddfb"},"downloads":-1,"filename":"RikaCSV-1.4.6.tar.gz","has_sig":false,"md5_digest":"3fafefcd2eb9af43e522037b7a2d06a4","packagetype":"sdist","python_version":"source","requires_python":null,"size":1089,"upload_time":"2019-11-28T13:53:33","upload_time_iso_8601":"2019-11-28T13:53:33.941896Z","url":"https://files.pythonhosted.org/packages/a2/fa/76eb26a70b93ef48ce968c36eb8c76b00fceca685c41d9dd40bfc6b9368e/RikaCSV-1.4.6.tar.gz"}]},"urls":[{"comment_text":"","digests":{"md5":"3fafefcd2eb9af43e522037b7a2d06a4","sha256":"6b5aa5699f545fb50e09217d04f23e1b1b813517aed2da90a6c619dec4b3ddfb"},"downloads":-1,"filename":"RikaCSV-1.4.6.tar.gz","has_sig":false,"md5_digest":"3fafefcd2eb9af43e522037b7a2d06a4","packagetype":"sdist","python_version":"source","requires_python":null,"size":1089,"upload_time":"2019-11-28T13:53:33","upload_time_iso_8601":"2019-11-28T13:53:33.941896Z","url":"https://files.pythonhosted.org/packages/a2/fa/76eb26a70b93ef48ce968c36eb8c76b00fceca685c41d9dd40bfc6b9368e/RikaCSV-1.4.6.tar.gz"}]}

0 commit comments

Comments
 (0)