patch 6ffe15b6166e21ec5803c543741120761da54368 Author: Alberto Bertogli Date: Sun Jun 2 11:24:22 IST 2024 tagged 1.3 patch 5a3f240640683ffc8e004f29472d8a6a47c56501 Author: Alberto Bertogli Date: Sun Jun 2 11:24:06 IST 2024 * Version 1.3 patch 312c375ec76e7aab99babba616bf8e3047883595 Author: Alberto Bertogli Date: Sat Mar 26 09:41:49 GMT 2022 * Fix URL separators in Python >=3.9.2 In Python 3.9.2 and above, the ';' is no longer a valid separator by default, which breaks the links we use. A new "separator" parameter is introduced to allow to adjust this behaviour. Since darcsweb uses ';' as separator, that change breaks darcsweb. This patch fixes the problem by passing the corresponding parameter on newer Python versions, so we don't break any links and darcsweb continues to be functional. In the future we may change the links to use "&" instead. However, that would break pre-existing links, so for now do the least intrusive change, which is more backwards-compatible. patch 2bd8efdd520ba712a5bbe8490654f62e59e8044e Author: Alberto Bertogli Date: Sat Mar 26 09:08:04 GMT 2022 * Auto-format the new print_readme() function This patch auto-formats the new print_readme() function, and also adds some guards in case the markdown format isn't available. patch 97c3584b47869f4bf6a3d5658f246b5903fc490d Author: E. Bosch Date: Fri Mar 25 22:49:19 GMT 2022 * Add README support Show README file (in markdown or plain text) from the project in summary and tree views. This is controlled by the "readme" option in config.py (by default not enabled). patch 6fdee1587ac025af67a4beff51c935ff897238f6 Author: Alberto Bertogli Date: Mon Dec 7 22:12:43 GMT 2020 * Support Python 3.5 Some type annotations required Python 3.7, which is alright, but some users are running Python 3.5. Since the code is otherwise compatible, replace the annotations with declarations. Those are still useful for type checking, and are 3.5 compatible. patch d086a3b61b6e59f8dfb1e29f1eba6406e245e91e Author: Alberto Bertogli Date: Mon Nov 30 12:58:48 GMT 2020 * Drop Python 2.7 version check The version check for Python 2.7 is no longer needed, now that Python 3 is a requirement. Thanks to ernst@creagraphy.nl for reporting this! patch ed7971715e899e35776cd7c003d938272ead97d0 Author: Alberto Bertogli Date: Sat Nov 28 03:32:14 GMT 2020 * Fix RSS and Atom feeds The Python 3 migration left the RSS and Atom feeds broken due to minor differences in dictionary APIs. This patch fixes those issues. patch 58a2ae48eb06ee9d46f3087982d2bb253f2cce25 Author: Alberto Bertogli Date: Sat Nov 28 02:59:13 GMT 2020 * Fix file size display Minor bug fix for Python 3, where the division would result in a float where we want an int for readability. patch 1be5313bd10579c3c9d091022c55dc7d00039134 Author: Alberto Bertogli Date: Sat Nov 28 02:55:51 GMT 2020 * Handle non-utf8 filenames and content properly As part of the Python 3 migration, some bugs surfaced surrounding the handling of non-utf8 file names and content. This patch fixes the issues found, and cleans up the code a bit by unifying the escaping/unescaping mechanisms a bit more. This is not particularly pretty overall, but at least it's functional. patch 9999a88bc03b54529332415904be1a7d3fe4de68 Author: Alberto Bertogli Date: Sat Nov 28 01:39:06 GMT 2020 * Remove old darcs repo format path handling Some of the path handling is aware of the old darcs repo format and will try to use it to speed some things up, but the code is obsolete and no longer works on new repositories. This patch simplifies the code by removing the obsolete paths. patch 3646d2b4168cfb1a1a2ec09d1be31efdffbc0018 Author: Alberto Bertogli Date: Sat Nov 28 01:37:28 GMT 2020 * Fix pygments invocation for Python 3 Remove workaround for ancient pygments, and fix the call for Python 3. patch e2f444175906329f5164d13a317963339abb4b15 Author: Alberto Bertogli Date: Sat Nov 28 00:10:33 GMT 2020 * Remove unused "raw" variants Some actions like "commitdiff" used to support "raw" variants, some which are no longer useful in the new darcs repository format, and others were removed long ago but some dead code remains. This patch cleans up the unused variants and dead code. patch 9afa8b81f511e9f87abe5863b1321c1dff414118 Author: Alberto Bertogli Date: Sat Nov 28 00:02:05 GMT 2020 * Remove Python 2 support, leave Python 3 only This patch moves the codebase to Python 3, since Python 2 is no longer supported. Most of the work adding Python 3 support was done in the previous patch by ernst@creagraphy.nl. This patch: - Where there was ambiguity, removes Python 2 code, leaving only 3. - Adds type annotations so darcsweb now passes mypy. Some gaps still remain in UTF8 handling, but those are pre-existing and will be addressed in subsequent patches. patch 6e9ed1cb56dafcfe8f6e832254812380d6238b71 Author: Alberto Bertogli Date: Fri Nov 27 19:59:25 GMT 2020 * Auto-format code This patch applies an auto-formatting pass, using the `black` tool to make the coding style more uniform and PEP8 compliant. A new configuration file, pyproject.toml, is added to set the defaults for the tool. patch 8299978c3d1d0c66a68dd64c1fb33a5ea424d42a Author: ernst@creagraphy.nl Date: Sat Nov 21 13:55:04 GMT 2020 * Fix for XML encoding problems in Python 2.7 - No change in Python 3, but in 2.7 we replace special characters by their ascii equivalent: ï becames i, etc. - Also I fixed a problem if Darcs generated the 000...000 patch as first line, leading to a crash. patch 4f191fb82124533465c450ec475ec1bde5001596 Author: ernst@creagraphy.nl Date: Sat Nov 21 08:49:32 GMT 2020 * Make Darcsweb compatible with Python 2.7 and Python3 - Some changes in imports, also for backward compatibility with Python 2.7 - Exceptions now need parentheses - print is now a function and needs parentheses (this is the bulk) - Skipping the newline with print now explicitly requires the option end='' - Strings are default UTF, so some conversion may be removed - Conversion from number to string changed, added int() for rounding (round gave different results) - Octal numbers now must be indicated with 0o, instead of just a 0. - The has_key function is removed, now uses the “in” keyword. - The sorted() function no longer has a “cmp” option, now uses “key” - The keys() function now returns a dictionary, and must be explicitly converted to list - Python3 is more picky about tabs versus spaces for identing, so some spaces were replaces by tabs patch bfc8c5f7c020e7fcfcb4f2f7b76473da576f3576 Author: Alberto Bertogli Date: Fri Nov 20 18:13:48 GMT 2020 tagged 1.2