summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-09-28debuggingdebuggingJohn Turner
2025-09-27remove unused functionJohn Turner
2025-09-27only guess syntax when sytnax query parameter is set to autoJohn Turner
2025-09-27log warning when determining the lexer failsJohn Turner
2025-09-27support passing mime type to help guess the lexerJohn Turner
2025-09-26make sure to try/catch around database transactionsJohn Turner
2025-09-26handle invalid keys by returning HTTPBadRequestJohn Turner
2025-09-26add test for s3 backend in test_server.pyJohn Turner
2025-09-26allow specifying secret key as an environment variable or fileJohn Turner
2025-09-26use ClientSession context manager to prevent unclosed clientsJohn Turner
2025-09-26add tests to check.sh sources listJohn Turner
2025-09-26add tests for s3 storage backendJohn Turner
2025-09-26update check.shJohn Turner
2025-09-26assert that "{key}" is in the get routeJohn Turner
2025-09-26do not assume /paste is the endpointJohn Turner
2025-09-26allow customizing the routes for get and postJohn Turner
2025-09-25create PasteInfo struct and replace read_row with read_paste_infofeature/new-keysJohn Turner
2025-09-25update check.shJohn Turner
2025-09-25change keys to 13*key_length bit random tokens and humanize the resultJohn Turner
Instead of picking random words via a random choice function, we generate a 13 * key_length bit random int as the key. We humanize the key by splitting it up into 13 bit segments and using the 13 bits as an index into the word list. This allows us to store the keys in binary form which is faster and uses less space.
2025-09-23gate tests behind optionJohn Turner
2025-09-23new wordlist with no dupesJohn Turner
The old wordlist had duplicate entries, and was too short after dedupe'ing (we need 2**13 words).
2025-09-23remove words with dashes in them from wordlist and reshuffleJohn Turner
2025-09-21shuffle in eff_small_wordlist into wordlist and truncate to 8192 entriesJohn Turner
2025-09-21add lru cache to pygmentize functionJohn Turner
2025-09-20remove wordlist from repoJohn Turner
2025-09-20embed wordlist into sourcesJohn Turner
2025-09-20update check.shJohn Turner
2025-09-20add extra not check for sqlite.existsJohn Turner
2025-09-20make sure keys are uniqueJohn Turner
2025-09-20update openrc service filesJohn Turner
2025-09-20remove bin directoryJohn Turner
2025-09-20add test_client_zen.pyJohn Turner
2025-09-20add test_sqlite_storage.pyJohn Turner
2025-09-20fix unused importJohn Turner
2025-09-20use foreach loop to create meson test targetsJohn Turner
2025-09-20add test_server.pyJohn Turner
2025-09-20print start status after pypaste is fully setupJohn Turner
2025-09-19dont return if command returns non-zeroJohn Turner
2025-09-18pass --command directly into subprocess.run using shell=TrueJohn Turner
2025-09-18check subcommand status code and print its stderr on failureJohn Turner
2025-09-12rewrite pypaste clientJohn Turner
2025-09-12print errors to sys.stderrJohn Turner
2025-09-12make paste service API take str instead of io.BytesIOJohn Turner
2025-09-12make sure to check every py file with flake8John Turner
2025-09-12fix lintsJohn Turner
2025-09-11fix unused variable lintplugable-clientsJohn Turner
2025-09-11rewrite meson.build file to handle installing just the client or serverJohn Turner
2025-09-11impl client backend for pgzJohn Turner
2025-09-11pass stdin.buffer directly to paste method, and catch errorsJohn Turner
2025-09-10implement basic clientJohn Turner