1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487
|
MoinMoin Version History
========================
Please completely read CHANGES text until you reach the version you were
using until now. Otherwise you might miss some important upgrading and
configuration hints.
Starting with 1.5.3, update installation hints are marked with HINT.
They assume you are upgrading from the last release version before (e.g. from
1.5.2 to 1.5.3).
This release has known bugs (see MoinMoin:MoinMoinBugs), but we think it is
already better than the previous stable release. Our release policy is not
trying to make a "perfect release" (as that release might NEVER get released),
but to make progress and don't delay releases too much.
Known main issues:
* The GUI WYSIWYG editor has still some issues and limitations.
If you can't live with those, you can simply switch it off by using:
editor_force = True
editor_default = 'text' # internal default, just for completeness
* TWikiDraw may have some issues - we need some JAVA guy caring for it!
* "Backup" and especially "Restore" action (both new in 1.5) have some
issues, so please DON'T USE THEM except if you want to help debugging
and improving it and after having made a backup with some other, proven
method. USE BOTH ON YOUR OWN RISK!
Version 1.5.3:
New Features:
* Added CSS classes for TableOfContents macro.
Bug Fixes:
* GUI editor / GUI editor converter:
* Fixed missing GUI editor link in edit bar.
* Fixed table/row/cell style spaces.
* Changed <p> generation for macros.
* Fixed handling of subpages.
* Fixed processing of complex list elements (thanks to Craig Markwardt).
* Fixed processing of html \n (thanks to Craig Markwardt).
* Fixed joining of comment lines with text below them.
* Fixed table height attribute crash.
* Fixed sslclientcert auth.
* Added some missing files to i18n processing, translatable strings more
complete now.
* Change <p> generation from self-closing (<p />) to auto-closing (only
emit <p>, let browser find place for </p>).
* Fix eating of newline before tables.
* Fixed incorrect login hint for not logged-in users trying a disallowed
action.
* Fixed nasty missing or double </a> formatter bug (mostly happening when
user has enabled questionmarks for nonexisting pages).
Other Changes:
* We catch and ignore html to wiki conversion errors in case of hitting
the cancel button, so you can get out of the error screen.
Version 1.5.3-rc2:
New Features:
* Modified SystemInfo macro to give human readable units and disk usage
* cfg.editor_quickhelp makes the quick help below the editor configurable
(at least as far as the default_markup is concerned). If set to None,
it doesn't display any quickhelp. Thanks to Seth Falcon for the patch.
Bugfixes:
* Fixed double class attribute for nonexistent links
* Fixed double </a> with qm_noexist option
* Fixed table xxx="yyy" style attribute parsing
* If not (editor_force and editor_default == 'text') then display GUI mode
switch button (this is only a partial fix, but enough to deny the GUI
mode to your users completely)
* Fixed XSS issue which could lead to cookie theft etc.
* Fixed definition list "same level" indenting.
* Fixed pagename in log for PackagePages action.
* Made <p> self-closing and line-anchors more well-behaved, thanks to
Martin Wilck for the patch. I didn't apply the <ol> patch, because this
is no real problem, just a problem of a bad standard.
* Fixed gui editor *bgcolor crash.
* Support/Fix tableclass attr with gui editor.
Other changes:
* Moved back UserPreferences action link from menu to top of page (renaming
it to "Preferences"), added "Cancel" button to make it possible to return
to the previous page without saving preferences.
* Removed formatter.url "attrs" keyword arg that took premade html, we use
separate kw args per attribute now.
* Moved broken tests to MoinMoin/_tests/broken (= disabling them).
All "active" tests run ok now.
If you want to compare, I included the output of this test run:
$ make test >tests/make_test.out
Version 1.5.3-rc1:
New features:
* HINT: please read README.migration
* Login and Logout are actions now, therefore you stay on the page where
you were before.
* UserPreferences is also an action now and moved from top border (in
modern theme) to the "more actions" dropdown menu. You also stay on the
same page.
* There is also a [[Login]] macro now. You can put it on any page you want
and if the user is not logged in, it renders the login form. If the user
is logged in, it doesn't render anything.
* We check cfg.superuser to be a list of user names (as documented) and
deny superuser access if it is not. This avoids security issues by
wrong configuration.
* auth methods changed:
HINT: if you wrote own auth methods, please change them as you see in
MoinMoin/auth.py and test them again before relying on them.
* now get a user_obj kw argument that is either a user object returned
from a previous auth method or None (if no user has been made up yet).
The auth method should either return a user object (if it has
determined one) or what it got as user_obj (being "passive") or None
(if it wants to "veto" some user even if a previous method already has
made up some user object).
* return value of continue_flag is now True in most cases (except if
it wants to "veto" and abort).
* moin_cookie auth method now logs out a user by deleting the cookie and
setting user_obj.valid = 0. This makes it possible to still get the
user's name in subsequent auth method calls within the same request.
* added ldap_login and smb_mount auth methods, see MoinMoin/auth.py and
wiki/config/more_samples/ldap_smb_farmconfig.py
* MonthCalendar now takes an additional argument for specifying a template
to use to directly invoke the page editor when clicking on non-existing
day pages.
* Added ImageLink macro. Thanks to Jeff Kunce, Marcin Zalewski, Reimar
Bauer and Chong-Dae Park for working on it.
* Lupy stuff (still experimental, partly broken and disabled by default):
* Attachment search using lupy (lupy_search = 1 in your config)
Title search will also search attachment filenames.
Full text search will also search attachment contents.
* Indexing filter plugins, see MoinMoin:FiltersForIndexing
Some filters depend on external converters that might not be available
for any platform (see Depends: line in filter plugin).
Feel free to contribute more filter plugins, especially if you wrote
some nice platform independant filter in Python for some popular file
format! Filters implemented so far (depending on):
MS Word, RTF, MS Excel (antiword, catdoc)
PDF (pdftotext)
OpenOffice.org XML based data formats (-)
XML, HTML (-)
text/* (-)
JPEG's EXIF data (-)
Binary generic (-)
* As you might know, Lupy is "retired" (that means it isn't developped
by its authors any more). We are currently evaluating Xapian as new
indexing search engine in moin.
If we succeed, we will replace Lupy stuff by some Xapian interface
code in moin.
But: the filters will likely stay, as we also need them with Xapian.
* A new MoinMoin script interface was introduced:
Syntax: moin [options] <cmdmodule> <cmdname> [options]
For example:
moin --config-dir=/my/cfgdir --wiki-url=wiki.example.org/ \
export dump --page=WikiSandBox
This will call the "moin" script, which will use the --config-dir and
--wiki-url options to initialize, then it will go to MoinMoin.script
module, import the export.dump module from there and run it, providing
the additional --page value to it.
The old scripts that have not been migrated to this new interface can
still be found in MoinMoin/script/old/ - including the old migration
scripts.
* moin ... account create --name=JoeDoe --email=joe@doe.org
* moin ... account disable --name=JoeDoe
* moin ... acount check <-- this is what usercheck script was before
* moin ... maint cleancache <-- this is what cachecleaner script was
* moin ... maint cleanpage <-- this is what pagescleaner script was
Bugfixes:
* cookie_lifetime didn't work comfortable for low values. The cookie was
created once on login and never updated afterwards. So you got logged
out cookie_lifetime hours later, no matter whether you were active at
that time or not. This has been changed, we update the cookie expiry now
on every request, so it will expire cookie_lifetime after your last
request (not after login).
* Fixed logout problems when using cfg.cookie_path.
* Fixed cookie_path for root url wikis.
* Lupy search now behaves a bit less curious. Still no guarantees...
* We lowered the twisted server timeout to 2 minutes now (was: 10) because
it just used up too many files (open TCP connections until it timeouts)
on our farm.
* The algorithm used for processing the farmconfig.wikis list was changed
to work for big farms (>= 50 wikis), too. This works around the python
"re" module limitation of having a maximum of 100 named groups in a RE.
* Fixed a TypeError which occurred for formatters that dislike None values.
(cf. http://moinmoin.wikiwikiweb.de/MoinMoinBugs/PythonErrorEditingFrontPage)
* Fixed GUI editor converter error for https:... image URLs.
* ThemeBase (use by modern/rightsidebar): removed duplicate AttachFile from
actions menu (we already have it in editbar).
* Speedup group/dicts scanning for persistent servers.
* Implemented HEAD requests for standalone server, this should fix some of
the strange effects happening when using "Save as" on attachments.
* Not a moin bug, but rather a workaround for non-standard non-ASCII DNS
hostnames: we just use the IP instead of crashing now.
* Spurious cyclic usage error in i18n fixed.
* Fixed antispam for python 2.5a xmlrpclib.
* I18n for linenumber toggle in listings.
* All action menu entries are translatable now.
Other:
* Added css classes for the rst admonitions. Thanks to TiagoMacambira!
Version 1.5.2:
New features:
* Added FullSearchCached macro which is statically cached.
Use it if you do not depend on fresh search results but prefer raw speed.
* Added surge protection, see HelpOnConfiguration/SurgeProtection.
* Allow hex and symbolic entities.
* If there is a user with empty password, we just generate a random one
when he requests it getting sent by mail. Thanks to Reimar Bauer.
* The superuser now can switch to another user using UserPreferences -
nice to help your users when they forgot their password or need other
help. You need to logout/relogin to use your own userid afterwards.
This function only works correctly if you use moin_cookie authentication.
Thanks to Reimar Bauer.
* Add new markup for bulletless lists: just use a "." instead of "*".
Other changes:
* Added "voyager" to bot useragent list.
* Added locking for caching subsystem.
* Deron Meranda's formatter API cleanup.
* Added div and span to formatter API.
* Removed old unfinished form and export code.
* updated i18n
Fixes:
* Fixed table attribute parsing.
* Fixed cookie handling wrt properties adherance.
* The new "." list markup makes it possible to have a bulletless list with
elements on the same level. Before this change and only using indentation
with blanks, that would get merged into a single paragraph.
* It is possible now to have multiple paragraphs in the same list element,
just leave an empty line in between the paragraphs.
* Fixed GAP processing for ordered lists.
* Fix text_gedit formatter's invalid list nesting.
* Fixed hr crash in blockquote (but needs more work).
* Fixed FootNote's formatter usage.
* Fixed rst's headline levels.
* Fixed MoinMoinBugs/WikiParserThinksItIsInsidePreWhenItIsNot
* Fixed MoinMoinBugs/ListItemGeneratedOutsideList
* Fixed that macros were followed by a wrong <p>.
* Added <blockquote> to the block elements in the text_html formatter,
so it does not close it erratically when you close a inner <p>.
* GUI editor converter now also accept http: urls without // (relative or
same server urls).
* Fixed the DocBook parser in cases where the pagename was non-ascii.
* Fixed MoinMoinBugs/ProcessInlineDontSupportUlElement
Version 1.5.1:
Fixes:
* Fixed rst parser docutils version check
* Repaired attachment unzipping feature.
* Fixed the AddRevision command of the PackageInstaller.
* improved the migration scripts (used to migrate pre-1.3 wikis to 1.3+):
* do not crash on empty lines in event log
* fix edit log format for very old moin data (like 0.11)
* workaround for an ugly win32 operating system bug leading to wiki text
file mtime not matching edit logs timestamp values if there was some
timezone change since last edit (e.g. a daylight saving tz switch),
but differing 3600s.
This affected pre-1.3 moin wiki servers running on win32 OS only.
We now try to correct those inconsistencies in mig05 by fuzzy matching.
* fixed bracketed link scheme icon (css class)
* we included a modified copy of Python 2.4.2's copy.py as some previous
python versions seem to have problems (2.3.x, x < 5 and also 2.4[.0]),
see: http://moinmoin.wikiwikiweb.de/MoinMoinBugs/DeepCopyError
Our own copy.py was slightly modified to run on 2.3.x and 2.4.x.
* Fixed the problem of not being able to change the date/time format back
to "Default" (UserPreferences).
* We generate the GUI editor footer now the same way as the text editor
footer.
* Include a CSS workaround for yet another IE bug, see:
MoinMoinBugs:InternetExplorerPeekABooBugInRightSideBar
* classic theme: added GUI editor link
* classic theme: added pagename header to editor screen
* the "mail enabled" check now also checks whether mail_from is set
Other changes:
* Updated FCKeditor to current CVS (2006-01-08 == 2.2+)
* Split up show_hosts into show_hosts and show_names
* attachment:file%20with%20spaces.txt in attachment list
* added support for file:// in GUI editor link dialogue, see also:
MoinMoin:FileLinks
* cfg.mail_smarthost now supports "server:port" syntax, the default port
is 25, of course.
* removed unused kwargs showpage/editable/form from wikiutil.send_footer
* updated i18n (translation texts, additional languages)
* removed interwiki:pagename from print view's top of page, added it to
the "lasted edited" line at bottom right.
Version 1.5.0:
HINT: 1.5.0 uses the same data/pages format as 1.3.x. The only thing you want
to check is whether the 1.5.x version you are upgrading to has NEW mig
scripts compared to the version you are running now (e.g. in 1.3.5 we
added some scripts that fixed some small problems).
See the MoinMoin/scripts/migration/ directory.
You must run every mig script in sequence and only ONCE ever.
Fixes:
* Fix <x=y> table attributes parsing. Thanks to Reimar Bauer.
* Fixed a few bugs in the reStructured text parser. Note that you
need to install docutils 0.3.10 or newer (snapshot from December 2005
or newer) to make reStructuring parsing work:
* Case preservation for anonymous links
* MoinMoin links get the appropriate CSS class
* Images do not get special CSS markup anymore
Thanks to Matthew Gilbert.
* Fixed a bug in the WSGI code which led to incorrect exception handling.
* Removed all nationality flags. They used to be used for indicating some
specific language (NOT nationality) and this was simply wrong and a bad
idea.
* Fixed some header rendering issues (CSS).
* SystemAdmin macro now checks against cfg.superuser list.
Other changes:
* Added turkish i18n. To be considered as alpha as it got in last minute.
Version 1.5.0rc1:
This is the first release candidate of MoinMoin 1.5.0.
Fixes:
* fixed broken logs when a DeletePage (maybe also RenamePage) comment
contained CR/LF characters (could happen when using copy&paste)
* fixed GUI editor MoinEditorBackup page containing HTML instead of wiki
markup
* fixed invalid HTML in FootNotes
* fixed HTML source in EditorBackup after canceling GUI editor
* Footnotes of included pages are not shown at the bottom of the including page.
* Bug in Dict handling that often breaks first entry
Version 1.5.0beta6:
Authentication:
* Added SSO module for PHP based apps. Currently supported: eGroupware 1.2.
No need to login in two systems anymore - MoinMoin will read the PHP session
files.
Fixes:
* Improved rendering of bullet lists and external links in Restructured text.
Thanks to Matthew Gilbert.
* Fixed modern theme rendering, including some fixes and workarounds for
broken MS IE.
* When checking for email uniqueness, do not compare with disabled user
profiles.
* Fix sending of HTTP headers for Despam action.
* Add some margin left and right of the link icons.
Other changes:
* Made it easier for auth methods needing a user interface (like ldap or
mysql stuff). Unlike http auth, they usually need some "login form".
We made UserPreferences login form values (name, password, login, logout)
available as kw args of the auth method, so it is easy and obvious now.
* Make login and logout show at the same place. Is only shown when
show_login is True (default).
* Disabled login using &uid=12345.67.8910 method. Please use name/password.
* Made builtin moin_cookie authentication more modular: the cookie is now
touched by MoinMoin.auth.moin_cookie only, with one minor discomfort:
When creating a user, you are not automatically logged in any more.
* We now use the packager for additional help and system pages in all other
languages except English. The packages are attached to SystemPagesSetup
page and can be installed from there after getting "superuser" powers.
The "extra" package contains a collection of orphan pages not listed on
some SystemPagesIn<Language>Group page.
Version 1.5.0beta5:
Fixes:
* Fixed a minor user interface bug: it showed RenamePage and DeletePage
actions in the menu if you only had write rights and then complained
when you really tried when you had no delete rights additionally.
* We don't remove RenamePage and DeletePage from menu any more if user is
unknown. This stuff is only driven by ACLs now.
* Some fixes to Despam action.
* Fixed moin_dump (broken by some recent theme init change).
* Fixed a few tests by moving the theme init from moin_dump to RequestCLI.
* removed old_onload reference from infobox.js
* Fixed MoinMoin logo for IE.
* search: fixed whitespace handling in linkto: search terms
* Increased stability of the tests system by outputting results to sys.stdout
instead of request. Note that this changes the semantics for e.g. mod_py or
mod_fcgi.
* Fixed packaging system in the case of AddRevision that does not alter the page.
* Fixed a few bugs in the XML formatters (dom_xml, text_xml, xml_docbook).
* Fixed link icons. We now just use a.xxx.before where xxx is the link scheme,
e.g. a.http.before. See theme's common.css.
* Hopefully fixed some issue with non-ASCII attachment filenames.
* Workaround for Opera 8.5 making silly "No addition" categories.
* Do not show GUI editor for non-wiki format pages, because we only have a
converter from html to wiki right now.
* Fix the modern CSS issues for editbar, when it shifted content far right.
Also removed the absolute height value that never was right.
* Fix mod_python adaptor bugs failing to handle Location correctly.
See: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=339543
Other changes:
* Added irc:// to the builtin supported link schemas. You can remove it
from config.url_schemas in case you have patched it in there.
* Added cfg.user_autocreate (default: False). Use True to enable user
profile autocreation, e.g. when you use http authentication, so your
externally authenticated users don't need to create their moin profile
manually. The auth method (see cfg.auth list) must check this setting
if it supports auto creation.
* Added user_autocreate support for auth.http and auth.sslclientcert.
* Added "." and "@" to allowed characters in usernames. This is needed
e.g. when using mod_pubcookie for authentication. mod_pubcookie returns
userids like "geek@ANDREW.CMU.EDU" (e.g. the Kerberos domain is part of
the id). Thanks to Brian E. Gallew for his patch, which we used for
inspiration for user autocreation changes.
* Changed auth method to return a tuple (user_obj, continue_flag), see
comments in auth.py.
* auth methods now create user objects with kw args auth_method and
auth_attribs, so that moin knows later how the user was authenticated
and which user object attributes were determined by the auth method.
* Added MoinMoin/scripts/import/IrcLogImporter.py to import supybot's
IRC logs into a moin wiki. We use MonthCalendar compatible page names,
so you can use the calendar for showing / navigating the logs.
* Removed packager binary from FCKeditor (fixing a Debian policy problem).
* Worked around .png transparency bugs of IE with the new logo. We ship
two logos: moinmoin.png without an alpha channel (IE compatible) and
moinmoin_alpha.png which has an alpha channel and looks better on
browsers with full .png support.
* Allow a .zip file to have a directory in it if it is the only one.
Version 1.5.0beta4:
Fixes:
* use <span class="anchor"> instead of <a> for line-xxx anchors, this
fixes some rendering problems on IE
* Fixed the ReStructured text parser when it was used with non-HTML
formatters. Increased compatiblity with new docutils code.
(Thanks to Matt Gilbert.)
Other changes:
* cfg.stylesheets = [] (default). You can use this on wiki or farm level
to emit stylesheets after the theme css and before the user prefs css.
The list entries must be ('screen', '/where/ever/is/my.css') style.
* Added sample code for auth using an external cookie made by some other
program. See contrib/auth_externalcookie/*. You need to edit it to
fit whatever cookie you want to use.
Version 1.5.0beta3:
Fixes:
* fixed editor preview throwing away page content for new pages
* require POST for userform save and create* action
* use request.normalizePagename() while collecting pagelinks
* do not offer gui editor for safari
Other changes:
* tell user if account is disabled
* added support for linking to .ico and .bmp
* attachment methods for the text_xml and xml_docbook formatters
* new favicon
* updated i18n (fixed nl, did nobody notice this?) and underlay
* changed show_interwiki default to 0
Version 1.5.0beta2:
Fixes:
* fix wrong _ in title links (MoinMoinBugs/AddSpaceWikiNameAtHead)
* fix gui editor (converter) crash on save
* MoinMoinBugs/PageHitsFails
* MoinMoinBugs/PackagePagesFailsBecauseAllowedActionsMissing
* Avoid destroying existing page content if editor is called with
template parameter for an existing page.
* fix countdown javascript for browser status line in editor
* added page title display for editor
* added header div for classic theme
Authentication and related:
* Added a WhoAmI.py wiki xmlrpc plugin to check whether auth works
correctly for xmlrpc. There is a counterpart script WhoAmI.py that
uses http auth when calling the xmlrpc plugin, so you can use it to
check http auth.
Version 1.5.0beta1:
* Requirements changed to require Python >= 2.3. We recommend that
you use the latest Python release you can get. The reason we
dropped 2.2.2 support is because no developer or tester uses this
old version any more, so incompatibilities crept in the code
without anybody noticing. Using some recent Python usually is no
real problem, see there for some hints in case you still run an
old python: http://moinmoin.wikiwikiweb.de/NewPythonOnOldLinux
The hint also does apply to other POSIX style operating systems,
not only Linux.
* We recommend you use MoinMoin/scripts/cachecleaner.py to clean the
wiki's cache (see comments at top of the script).
The cache will automatically be rebuilt (some operations may take
some time when first being used, e.g. linkto: search, so be patient!).
Config Changes:
* there is a file CHANGES.config with just the recently changed stuff
from multiconfig.py
* new defaults:
* page_front_page old: u"FrontPage" new: u"HelpOnLanguages"
please just read the help page in case you see it :)
* bang_meta old: 0 new: 1
* show_section_numbers old: 1 new: 0
* some regexes that used to be [a-z]Uxxxx$ are now [a-z0-9]Uxxxx$
* navi_bar has no page_front_page as first element any more
* removed settings and code [new behaviour]:
* acl_enabled [1]
* allow_extended_names [1]
* allow_numeric_entities [1]
* backtick_meta [1]
* allow_subpages [1]
* new settings:
* cfg.mail_sendmail = "/usr/sbin/sendmail -t -i" can be used if sending
via SMTP doesn't work on your server. Default is None and that means
using SMTP.
* language_default replaces the old default_lang setting (just renamed).
* language_ignore_browser = True can be used to let moin ignore the
user's browser settings (e.g. if you run a local-language only wiki
and your users use misconfigured or buggy browsers often). Default is
False. Don't forget to set language_default when using this.
* Wiki Editor changes / new WYSIWYG editor
* fully imported the javascript based LGPLed FCKeditor (many thanks
to Fred CK for his great work). See http://fckeditor.net/ for details.
* config for FCKeditor is at wiki/htdocs/applets/moinfckeditor.js
* added cfg.interwiki_preferred (default = []) to set a list of wikis to
show at the top of the wiki selection list when inserting an
interwiki link (just use the same wiki name as in interwiki
map). If the last list item is None, then the preferred wikis
will not be followed by the entries of the interwiki map.
* moved save/preview/... buttons to the top so that they can be
easily reached
* reduced edit_rows default to 20 lines
* Added support for edit by doubleclick in the diff view
* Improved wiki farm support
* make user files sharable between several wikis in a farm
* allow/use interwiki subscriptions
* use interwiki links in page trail
* save bookmark per wiki name
* cfg.cookie_domain can be used to set a cookie valid for a complete
domain (default: None == only for this host). If you use '.domain.tld',
the cookie will be valid for all hosts *.domain.tld - good for host
based wiki farms.
* cfg.cookie_path can be used to set a cookie valid for a wiki farm under
some base path (default: None == only for this wiki's path). If you use
'/wikifarm', the cookie will be valid for all wikis
server.tld/wikifarm/* - good for path based wiki farms.
* Interwiki user homepage (if you have MANY users)
Generated links for usernames are interwiki now, use cfg.user_homewiki
(default: 'Self') to specify in which wiki the user home pages are
located. Note: when pointing this to another wiki, the /MoinEditorBackup
functionality will be disabled.
@SIG@ also uses interwiki when needed.
* Authentication, ACLs and related
* Modular authentication: cfg.auth is a list of functions that return a
valid user or None, use it like this:
from MoinMoin.auth import http, moin_cookie
auth = [http, moin_cookie]
* cfg.auth_http_enabled was removed, please use cfg.auth instead.
* http auth now supports "Negotiate" scheme, too
* Added sslclientcert auth method (Apache: untested, Twisted: not
implemented, IIS: no idea). See MoinMoin/auth.py for details.
Submit a patch if you have improvements.
* cfg.superuser is a list of unicode usernames. It is used by some
critical operations like despam action or PackageInstaller.
* removed allowed_actions, we now use actions_excluded only and it
defaults to [], that means, no action is excluded, everything is
allowed (limited by ACLs). In case of RenamePage and DeletePage,
this shouldn't be a problem as both can be reverted. In case you
did not allow attachments, you now have to use:
actions_excluded = ['AttachFile']
* special users (All, Known, Trusted) in Groups are now supported
* MoinMoin.util.autoadmin SecurityPolicy added
When using this security policy, a user will get admin rights on his
homepage (where pagename == username) and its sub pages. This is needed
for the MyPages action, but can also get used for manual ACL changes.
It can also be used for Project page auto admin functionality, see the
comments in the script for details.
Further it can automatically create the user's group pages when the
user saves his homepage.
* there is a UpdateGroup xmlrpc call, see MoinMoin/xmlrpc/UpdateGroup.py -
you can use this to update your *Group pages e.g. when generating them
from an external group database.
* UserPreferences changes
* Alias name: is used for display purposes, when "name" is cryptic. It is
shown e.g. in the title attribute of userid links (displayed when
moving the mouse over it).
* "Publish my email (not my wiki homepage) in author info" - use this
if you don't have a wiki homepage, but if you want to be contactable
by email. When you edit a page, your email address will be published
as mailto: link on RecentChanges, at bottom of page (last editor) and
in page info. If the wiki runs publically on the internet, be careful
using this or your email address might be collected by spammers.
* Preferred Editor: whether you want to use the text editor (as in
previous moin versions), the gui editor (new!) or both (you will get
2 edit links in that case).
* a user can add/remove the current page to/from his quicklinks with an
appropriate action now
* if cfg.user_email_unique = False, we don't require user's email
addresses to be unique
* removed show_fancy_links user preferences setting to simplify code and
caching. Displaying those icons is now done by CSS styles (see
common.css). Maybe needs fixing for non-standard themes and RTL langs.
* Markup
* added strikethrough markup: --(striked through text here)--
* @ME@ expands to just the plain username (no markup added) on save
* User homepages
* when a user accesses his own non-existing homepage (pagename ==
username), the wiki will present the MissingHomePage system page
content, explaining what a user homepage is good for and offer
one-click editing it with content loaded from HomepageTemplate
* creation of homepage subpages is assisted by the MyPages action, which
offers rw, ro page creation (and a related group) or creation of private
pages. If you are not in the user_homewiki, you will get redirected
there first.
Other changes/new features:
* Added PackageInstaller and unzipping support (see wiki page
HelpOnActions/AttachFile for further details). PackageInstaller requires
the user to be in cfg.superuser list.
* Added an PackagePages action to simplify the package creation.
* Added location breadcrumbs - when you are on some subpage, the page
title parts link to the corresponding parent pages, the last part does
the usual reverse linking.
* added WSGI server support, thanks to Anakim Border, see:
wiki/server/moinwsgi.py (moin as WSGI app, uses the flup WSGI server,
see http://www.saddi.com/software/flup/)
MoinMoin/server/wsgi.py (adaptor code)
* added a "Despam" action to make de-spamming a wiki easy (mass revert
bad changes done by a single author or bot). You need to be in
cfg.superuser to use it.
* Better diffs with links to anchors to the changed places
* Enhanced table support in the DocBook formatter.
* Added 'moin' daemon script, that let you run moin standalone
server as daemon and control the server with simple command line
intreface: moin start | stop | restart | kill
* Add 'restart' option to mointwisted script
* Add properties option to standalone server config. Allow
overriding any request property like in other server types.
* Add support for running behind proxy out of the box with out
manual url mapping.
See HelpOnConfiguration/IntegratingWithApache
* added a WikiBackup action, configure it similar to this:
data_dir = "/path/to/data"
backup_include = [data_dir, ] # you can add other dirs here
backup_users = ["BackupUserName", ] # only TRUSTED users!
You usually don't need to change the default backup_exclude setting.
The default backup_include list is EMPTY and so will be your
backup in case you don't configure it correctly.
If you put your data_dir there, the backup will contain private
user data like email addresses and encrypted passwords.
* Added a SubscribeUser action which allows the administrator to subscribe users to the
current page.
* Added thread count to SystemInfo macro.
* Added Petr's newest patch against the DocBook code. It allows you to use macros (esp. the include macro) in DocBook pages in order to build larger documents.
* Added a RenderAsDocbook action which redirects to the DocBook formatter.
* Added searching for wiki-local words lists under <data_dir>/dict/.
They are used additionally to the global lists in MoinMoin/dict/.
* moin_dump now also dumps attachments referenced from the page.
It doesn't dump stuff that is just attached, but not referenced!
* On RecentChanges we now force the comment to be breakable, this improves
rendering of over-long words or on narrow browser windows - especially
for themes with limited content width like rightsidebar.
* We now have the "new" icon on RecentChanges clickable, just links to the
page.
* Print view now shows "interwikiname: pagename" (for show_interwiki = 1).
International support:
* mail_from can be now a unicode name-address
e.g u'Jrgen wiki <noreply@jhwiki.org>'
Theme changes:
* logo_string is now should be really only the logo (img).
If you included your wiki's name in logo_string you maybe want to remove
it now as it is shown as part of the location display now anyway (if
you set show_interwiki = 1).
* You maybe want to remove page_front_page from your navi_bar - we link to
that page now from the logo and (new, if you set show_interwiki = 1) from
the interwiki name displayed in location display, so you maybe don't need
it in navi_bar, too.
* If you have a custom theme, you should / may:
* sync modern/css/screen.css #pagelocation #pagetrail stuff to your
screen.css or pagelocation display (title()) will look strange (like a
list).
* remove "#title h1 ..." CSS (or any other CSS assuming h1 is a page
title and not just a first level heading), it is not used any more.
* we now render = heading = as <h1> (was <h2> before 1.5),
== heading == as <h2> (was <h3>), etc.
* maybe move both title() and trail() to header area, like the builtin
themes do it.
* there is a new interwiki() base theme method that optionally (if
show_interwiki = 1) shows the interwiki name of this wiki and links to
page_front_page. The css for it is #interwiki.
Developer notes:
* Plugin API was improved. When plugin module is missing,
wikiutil.PluginMissingError is raised. When trying to import a
missing name from a plugin module, wikiutil.PluginMissingError is
raised. You must update any code that use wikiutil.importPlugin.
Errors in your plugin should raise now correct tracebacks. See
http://moinmoin.wikiwikiweb.de/ErrorHandlingInPlugins
* pysupport.importName was changed, it does not check for any
errors when trying to import a name from a module. The calling
code should check for ImportError or AttributeError. Previous
code used to hide all errors behind None.
* Its easier now to customize the editbar by overriding
editbarItems() in your theme, and returning a list of items to
display in the editbar. To change a single editbar link, override
one of the xxxLink methods in your theme.
Internal Changes:
* request.formatter (html) is available for actions now
* theme API's d['page_home_page'] is gone (sorry) and replaced by
d['home_page'] which is either None or tuple (wikiname,pagename).
It is better to use the base classes function for username/prefs anyway.
* introduced cfg.hacks for internal use by development, see comment in
multiconfig.py and file HACKS.
* added IE7 (v0.9) from Dean Edwards (see http://dean.edwards.name/IE7/) -
that should fix quite some IE bugs and annoyances (on Win32).
* for enabling IE7, use cfg.hacks = { 'ie7': True }
* reducewiki now also copies all attachments (we use that to make underlay
directory from moinmaster wiki's data_dir)
Fixes:
* Fixed a typo in xslt.py which led to a traceback instead of an
error message in case of disabled XSLT support.
* Fixed crash in twisted server if twisted.internet.ssl is not
available.
* Fixed wrong decoding of query string, enable wiki/?page_name urls
with non ascii page names.
* Fixed wrong display of non ascii attachments names in
RecentChanges and page revision history.
* Fixed a crash when trying to run standalone server on non posix os.
* Fixed highlight of misspelled words in Check Spelling action.
* Fixed case insensitivity problems on darwin (Mac OS X). See
MoinMoinBugs/MacHfsPlusCaseInsensitive
* Added RecentChanges (only the english one) to the pages getting
html_head_index headers
* text_html cache files written with this code will invalidate themselves
if they detect to be older than the wikiconfig. Note: you should remove
all old text_html cache files once after upgrading, they will then be
rebuilt automatically with the new code.
* Fixed MoinMoinBugs/12_to_13_mig10_Walk
* Fixed the word_rule: a word like AAAbbAbb isn't teared into two parts
any more (was: AA<link>AbbAbb</link>)
* Fixed false positive InterWiki markup for languages like Finnish.
InterWiki links are only rendered if the left side has an appropriate
entry in the interwiki map, otherwise it is rendered as simple text.
* Fixed unicode error when uploding non-ascii file name using mod
python.
* Fixed error handling of wikirpc requests, should give more
correct errors and prevent no error output and blocking the
client in some cases.
* Fixed the "lost password" mail processing. If a user entered some email
address unknown to the system, he was not notified of this, but just got
a useless mail with no account data in it. Now the system directly tells
the user that he entered an unknown email address.
* Fixed SystemInfo, it now also lists parsers in data/plugin/parser dir.
* Fix error handling on failure, improved error display
* Fix error handling when importing plugins or importing modules
dynamically. The fix is not backward compatible with older plugins.
* Fix chart action, returns a page with error message when chart
can not be created.
* Fixed formatter usage in the ShowSmileys macro.
* Fixed updating pagelinks cache for [:page:text] or [wiki:Self:page text],
fixes display of LocalSiteMap and rendering of such links.
* Hopefully fixed urllib problems (esp. with py 2.4.2, but also before) by
using our own urllib wrapper that handles encoding/decoding to/from
unicode, see wikiutil.py. Also made a similar fix for making and parsing
query strings.
* Fixed MonthCalendar tooltips when containing special chars like quotes.
* Added html escaping for diff text for RSS feed with diff=1.
* The distance between page content beginning and the first = heading =
was much too much. Fixed.
Version 1.4:
We used that version number for an internal and early development version
for what will be called moin 2.0 at some time in the future.
There will never be a 1.4.x release.
Version 1.3.5 (2005-08-04, Revision moin--main--1.3--patch-883)
Fixes:
* small CSS fix for rightsidebar theme
* applied some Debian patches (thanks to Jonas!):
* de i18n spelling fixes
* AttachFile fix, we strip CR in .draw files now
* when loading spellcheck dictionaries, we want utf-8, but we make
a 2nd try with iso-8859-1 encoding.
New Features:
* enabled using https with the Twisted server:
You need to use port 443, have PyOpenSSL (+ ssl libs it depends on)
installed and have some site key and certificate PEM files configured in
your twistedmoin.py file:
sslcert = ('/whereever/cert/sitekey.pem', '/whereever/cert/sitecert.pem')
Version 1.3.5rc1 (2005-07-31, Revision moin--main--1.3--patch-865)
Fixes:
* Fixed security bug when acl of deleted page was ignored. See:
http://moinmoin.wikiwikiweb.de/MoinMoinBugs/ACLIgnoredAfterDelete
* AttachFile did not display the original filename plus there
was a confusion in input field labelling ('Rename to').
* Fixed shortcut link non-existent page detection.
* Fixed non-working bookmark function on python 2.2.x.
* Fixed wikirpc getPageInfo call on python 2.2.x.
* Fixed the failing import of plugins from the data/plugin/
directories if run in zipimport environments.
* Fixed traceback which occurred on negated searches.
* Fixed crash when trying to render error message on twisted, fast
cgi and modpy.
* Fixed error message with modpy, used to show wrong errors below
the real message.
* Fixed search and goto text fields for better compatibility with
dark themes and better control through css.
* Show an edit link if MissingPage is missing and a warning in the
server log.
* Fixed missing footer in the editor.
* Fixed indented (invalid) headings with broken links in table of
contents.
* Fixed crash when file name is too long, show standard error message.
* Save trail file in a safe way, should be enough for normal use.
* Fixed remember_last_visit user preferences option when show_trail
is not selected.
* Fixed the tests for Standalone, Twisted, FastCGI and Mod_Python.
Run with ?action=test from any page.
* Fixed rare bug when wrong search type was performed when pasting
search term in Safari.
* Fixed crash for custom formatters and dom_xml (which occurred if
smileys were in the page).
* Editor opens on double click in pages with single quote in the
name, like "Ben's Wiki".
* '/.' in page names are not replaced any more by '/(2e)'
* Fixed the long delays while saving pages using RequestCLI.
* Fixed variable expanding for users with non WikiName.
* Fixed MonthCalendar's calculation of "today" to use the user's
time zone setting.
* Fixed moin_dump script, use same configuration options as other
scripts.
* Fixed url_mappings to work in proxied setups and sent mails
again. Also fixed for image links. Thanks to JohannesBerg.
* Fixed page shown after saving a drawing (esp. when saved from a
sub page). Fixed help link for drawings.
* Fixed mig10 script to run on Python < 2.3.
* The twisted server defaulted to a socket timeout of 12 hours!
We reduced that to a more sane 10 minutes, that should still be more
than enough. This fixed the "too many open files" problem we
encountered quite often recently. Thanks to Helmut Grohne!
Other Changes:
* Added {hu} flag.
* Added cz, pt and pt-br i18n.
* We send a 404 http status code for nonexisting wiki pages now,
maybe this will repell some search engines from requesting gone
pages again and again. The wiki user still sees the MissingPage
wiki stuff, so a user usually won't notice this change.
* Return 500 error code on failure and exceptions.
* Added some more bot / leech tool user agent strings.
* Prevent page floating elements from floating out of the page over
the footer, in modern, rightsidebar and classic themes.
* Encode URLs in a safer way
* We allow usernames with ' character in them now (like Tim O'Brian).
* Added support for the new security flags in docutils 0.3.9.
* @MAILTO@ expands now to safer [[MailTo()]] macro.
* Clarified and i18ned lost password mails.
* Added 'TitleIndex' and 'SiteNavigation' (+ translation) to the
list of pages that use html_head_index (so that robots
"index,follow"). Please make sure to have either FindPage,
TitleIndex or SiteNavigation in your navi_bar or in your
page_front_page content if you want search engines to find all
your pages.
* Make it possible to send account data when being logged in (for
future reference or whatever purpose).
* Speed up when running with persistent servers, the wiki config
does only get loaded once and misc. stuff is being cached between
requests now.
* The unit tests are disabled when using multi threading, because
the wiki configuration is shared between diffrent threads.
* The main code path (using standalone server) of MoinMoin runs on
PyPy now.
* Formatters do automatically transform HTML to plain text if they are
called with raw HTML code.
* Using larger socket backlog on Standalone and FastCGI servers
should be more reliable on high load.
* We now strip leading path from attachments uploaded by IE (this is
a bug in IE, not in MoinMoin). Better use a sane browser, like Firefox.
* added "teleport" to the user agent blacklist
New Features:
* Integrated Lupy indexer for better search performance. It is disabled
by default as of 1.3.5 as it still has known issues.
See multiconfig.py if you want to test it.
* Integrated MonthCalendar 2.1, with some new features:
* a mouseover bubble that shows first level headlines of the linked
day page
* all calendars with same pagename move when using cal navigation,
thanks to Oliver Graf
* included AnnualMonthlyCalendar patch of Jonathan Dietrich
(use [[MonthCalendar(Yearly,,,+1,,6,1)]] syntax for birthdays and
other annually repeating stuff)
Make sure you remove old MonthCalendar.* from data/plugin/macro so that
moin will use the new code in MoinMoin/macro/MonthCalendar.py.
Maybe also clear the text_html cache.
* Added the new XSLT parser and the DocBook parser. This should increase
the 4suite compatiblity. See HelpOnXmlPages for details.
It now should run on 4suite 1.0a4 and 1.0b1. Thanks to Henry Ho!
* Added the DocBook formatter. This will let you generate DocBook markup
by writing simple wiki pages. It needs PyXML.
* It is now possible to customize parts of the UserPreferences page in
your wikiconfig (changing defaults, disabling fields, removing fields):
* Use user_checkbox_* for the checkboxes.
* Use user_form_* for other fields.
* See MoinMoin/multiconfig.py for the built-in defaults.
* New standalone server classes: ThreadPoolServer using pool of
threads, ThreadingServer with thread limit and ForkingServer.
* New standalone server configuration options: serverClass,
threadLimit, requestQueueSize.
* Use "PythonOption Location" in mod_python setup to solve script_name
problems.
Developer notes:
* Theme can now override maxPagenameLength() method to control page
name shortening.
* A search Match now provides access to the full re match via
the re_match attribute (use to access groups of the match)
* Underlay is not managed by arch any more. The tree contains an
underlay tarball, and you should untar after you update from main.
* "make update-underlay" will untar underlay
* "make merge" will star-merge main into your tree
* "make test" will now create and run in a fresh testwiki instace
* "make clean" options added
* _tests module does not have a global request any more. To refer to
the current request in a test, use self.request.
* _tests.TestConfig class require a request in the constructor.
* "python tests/runtests.py test_module" will run only test_module
* request.cfg stays between requests (for persistent servers).
Version 1.3.4 (2005-03-13, Revision moin--main--1.3--patch-666)
Fixes:
* Fixed ACL check in LikePages macro that caused links to unreadable
pages to show.
* Fixed ACL check in newpage action.
* Fixed a security problem when admin policy defined in a custom
SecurityPolicy class was ignored.
* Fixed ACL check in action=show so that a user who may not read a page
also can't find out WHEN the protected page was updated.
* Workaround on Windows 95, 98, ME in order to clear the dircache.
This fixes some bugs related to an outdated page list and newly created
pages that did not appear immediately.
* Fixed decoding issues of page names on Windows, finally.
http://moinmoin.wikiwikiweb.de/MoinMoinBugs/BrokenUmlautsInLinksIn131
* Fixed traceback on IIS.
http://moinmoin.wikiwikiweb.de/MoinMoinBugs/request%2epy_broken_on_IIS
* Fixed wikirpc for standalone server.
* Other fixes (encoding and str/unicode data type related) to wikirpc
server, fixing some non-ascii issues hopefully.
* Fixed broken query strings for Standalone installations.
* Fixed backlinks - the result did not always show all links, often it
showed too many irrelevant matches (MoinMoinBugs/BacklinksAreBroken).
* Fixed the acceptance of the show_hosts setting. Now you should be able
to hide any IP or host name from being published by MoinMoin by enabling
this option.
* Fixed wrong line endings on email messages.
* Fixed MoinMoinBugs/StandaloneUnquotesTooMuch.
* Fixed crash when trail file is missing.
* Fixed a traceback when searching for single ( or ).
* Added mig10 script to fix crashes with uncoverted edit-locks and file
attachments. Just use it as you did with mig1..mig9 before.
* Added mig11 script to add __init__.py files to data/plugin (and below).
* added some fixes for the xslt parser (thanks to fanbanlo), it might be
still broken, but someone with deeper knowledge about xslt should fix it.
* Replaced image link with W3C's "html 4.01 compliance" icon by a simple
text link to avoid https: or config trouble.
* Catch OverflowError backtrace when illegal date strings (e.g. <1970 or
>2038) are fed to moinmoin's time routines. It will just output current
date / time in those cases.
* UserPreferences now also set a date_fmt preference and Date macro
honours it. You may have to reset your UserPreferences value for that.
* Fixed free parent and subpage links in interwiki notation.
http://moinmoin.wikiwikiweb.de/MoinMoinBugs/FreeParentLinksAreBroken
* Fixed a traceback for invalid ReST markup.
* Fixed UnicodeError in SystemAdmin's Attachment Browser.
Other Changes:
* Optimized the IRC parser.
* Support for zipimport of the MoinMoin package. This allows you to use
py2exe and similar programs.
* Show the editor's name in the mail subject.
* Added the pragmas description and keywords. They will add <meta> headers
if used.
* Added MoinMoin/scripts/xmlrpc-tools/putPageTest.py example script, useful
as a starting point for importing data using wiki xmlrpc.
* Optimised display on Opera browser.
New features:
* The search modifier "linkto:" was introduced. You can use it to search
for links.
* The NewPage macro now can take a PageTemplate parameter, see HelpOnMacros.
* New config settings (so you don't need to edit wikirpc.py any more):
xmlrpc_putpage_enabled = 0 (if 1, enables writing to arbitrary page names)
xmlrpc_putpage_trusted_only = 1 (if 0, doesn't require users to be
authenticated by http auth - DANGEROUS, DO NOT SET TO 0!!!)
* Added support for Digest and NTLM authentication with CGI (e.g. if you
use those Apache modules)
* The datetime string accepted by Date and DateTime macros was extended to
accept a timezone specification, so now +/-HHMM is also valid, e.g.:
2005-03-06T15:15:57Z (UTC, same as +0000)
2005-03-06T15:15:57+0000 (UTC)
2005-03-06T16:15:57+0100 (same time given as local time for time zone
with offset +0100, that is CET, e.g. Germany)
2005-03-06T10:15:57-0500 (same time given as local time for time zone
with offset -0500, EST, US Eastern Std. Time)
The values given as macro argument will be transformed to UTC internally
and then adapted again according to viewing user's UserPreferences, so
the user will see the same moment in time but shown in his local time
zone's time (at least if he set his UserPreferences correctly and didn't
forget changing them twice a year for DST and non-DST).
* Readded (now optional) editlink footer to Include macro. Add
',editlink' to call to enable this.
* star "smileys" e.g. {*}{*}{*}{o}{o}
Version 1.3.3 (2005-01-24, Revision moin--main--1.3--patch-595)
Fixes:
* fixed ACL security problem in search
* fix for IIS with CGI allowing page names that contain chars
that are not in the system code page
* fixed MoinEditorBackup revisions to start with 1 now
* improved page locking ('current' file)
* Unittests (normally shown at end of action=test output) are currently
disabled for everything except CGI, because they only work reliably with
CGI, giving wrong results for other request methods.
Version 1.3.2 (2005-01-23, Revision moin--main--1.3--patch-587)
Fixes:
* ACL bugfix for deleted pages with ACL protection.
* ACL bugfix for "Default" acl.
* Fixed updating of groups and dicts
* Python 2.2.x related fixes (worked on 2.3+)
* Fixed traceback in RecentChanges.
* Fixed traceback with links browser.
* Fixed 0 revision display in 'Show changes'.
* Fixed traceback in Antispam which occurred when it could not connect
to MoinMaster. Log the errors to stderr or error.log.
* Fixed bug in Page init (no date, use rev). Fixes problem with
#deprecated PI.
* Fixed empty lists in empty search results.
* Cosmetic fix for modern theme (when viewed with Internet Explorer).
* Fixed migration 9 script, do not drop newline, do not drop error.log,
note about missing error.log.
* Fixed repair_language.py script, keep ending newline on revisions.
* Show headings and macro content in correct direction when mixing content
in several directions in the same page and using caching.
* Fixed bug in standalone re farmconfig.
* Fixed DOS condition in antispam code.
* Use smaller margin in print mode to get better results with
Mozilla/Firefox.
* Fixed some user input escaping issues.
* Fixed a problem when one wiki plugin override other wikis plugins in
same farm.
* Fixed some broken tests.
* Fixed recursive include in pstats.
* Fixed bug in standalone - HTTP result code was 200 even when the access
was forbidden.
* Fixed traceback when trying to login with non-ascii password.
* Fixed traceback when xml is not available, reported on Python 2.2.?
* Fixed slideshow to show slides in sorted order again.
* Fixed serving multiple wikis on same IP/different ports with twisted and
farmconfig.
* It is possible to run with data_underlay_dir = None for special
application, but be aware that the wiki won't be usable unless you have
at least some of the system pages from underlay/ available.
* Files with Unicode characters in their filename are possible now.
* Bugfix for broken [:page#anchor:text] links.
* Workaround an instability of the gdchart module leading to
stalled servers etc.
* Fixed some event-log decoding issues that affect charts rendering.
Other changes:
* Major speed improvement over 1.3.1. Many times faster title search,
creating new page, opening page editor and any operation that list pages.
See http://moinmoin.wikiwikiweb.de/MoinBenchmarks
* Improved README.migration.
* Cleaner design for login/register interface, login is always the default
button when the user click Enter.
* If there are problems found in the configuration, log the error
and display helpful error messages in the browser.
* More forgiving unicode configuration policy, you must use the u'string'
format only for unicode values.
* Added profiling to CGI.
* The content of farmconfig.py is similar to wikiconfig.py now.
* Unexpected errors while loading cache files are logged.
* i18n for icon ALT tags.
* Include request initialization code in the profile in standalone server.
* When creating new theme, style sheets are inherited correctly, no need
to override style sheets just to get them working.
* Many times faster plugin system. Typical pages are about 35% faster,
pages with many plugins can be many times faster.
* Spiders are allowed to fetch attachments.
* Old user files containing password hash encoded in pre 1.3 charset
are auto repaired on first login.
* data_dir defaults to './data', underlay_data_dir to './underlay' now.
It is a good idea to replace those by absolute pathes in wikiconfig.py.
* Renamed "Refresh" to "Delete Cache" - it was misused by users. The action
was also moved into the action menu in the modern and rightsidebar themes.
* Added a workaround for TableOfContents missing some links by making it
uncacheable via a "time" dependency.
* Removed interwiki icon and title attribute for wiki:Self:... links.
* Unittests (normally shown at end of action=test output) are currently
disabled because they worked unreliably, giving wrong results sometimes.
New features:
* Create new pages easily using configurable interface and page templates
with the new NewPage macro.
* ReStructuredText (rst) support is built-in now. See HelpOnParsers.
* New experimental feature in mointwisted.py - each interface may
specify a port: '12.34.56.78:80'. Without a port, the port option
is used.
API changes:
* For a complete list of changes, see MoinMoin:ApiChanges.
* wikiutil.importPlugin's first argument is now a wiki config instance
(request.cfg) and there is no path keyword.
* Wiki plugins always override MoinMoin plugins. wikiutil.importPlugin
implements this override.
* util.pysupport.importName does not accept path - you should call
it with correct module name, e.g 'wikiconfig.plugin.parser.wiki' for
wiki plugins, or 'MoinMoin.parser.wiki'.
* wikiutil.extensionPlugin was renamed to wikiPlugins and it gets config
instance instead of path.
* New function wikiutil.importWikiPlugin used to import wiki plugins
using a cache in a thread safe way.
* New config option config.use_threads is used to activate thread
safe code.
* New keyword arguments for getPageList, enable 10X faster operation
for common cases by controlling page filtering.
* New up to 100X times faster getPageCount
Version 1.3.1 (2004-12-13, Revision moin--main--1.3--patch-434)
Fixes:
* Fixed "Error Cyclic usage" crash when user had Italian (it), Korean
(ko), Serbian (sr) or Vietnamese (vi) as user interface language.
* Fall back to en (instead of crashing) when user uses a language moin
does not support / does not support any more (like pt,sv,fi,sr).
* In 1.3.0, people accidentally put iso-8859-1 chars into wiki configs,
but those where expected to be pure utf-8 and thus it crashed.
Fixed by using unicode strings (varname = u'whatever'), a matching
encoding setting (see top of script comment) and, when decoding strings,
using decode to ASCII with replace mode (this replaces non-ASCII chars,
but at least it won't crash - and you get a warning to better use
Unicode strings).
* Fixed long time broken table formatting. ||<style="see css spec" a||b||
Now even generates valid HTML! The old markup for align, valign, width,
bgcolor still works, but synthesizes style attribute data.
* SystemAdmin macro shows attachments of ALL pages now.
* Users without write acl rights will be able to see attachments again and
also have AttachFile action in menu.
* Fixed wrong match count in search results, find all matches in page
titles, show all matches in contents in some rare cases.
* Run about 200% faster with long running processes (standalone, Twisted),
about 20% faster with cgi, by better internal data handling in wikidicts.
* On SF, the dict files use utf-8 encoding now. We included them also in
distribution, see contrib/dict/.
* Fixed permissions to shared template stuff.
* Speeded up search, fixed wrong match counts.
* Speeded up internal data handling (wikidicts).
* Fixed rare unicode error after deleting a page (reported only on SuSE
Linux 9.0 / Python 2.3.0).
* Fixed file permissions of files in the data dir.
* Fixed some cosmetic problems in migration scripts and use sys.path.insert
to get latest moin code when executing them.
Other Changes:
* Improved docs, system and help pages.
* Updated translation files.
Known Bugs:
* Internet Explorer renders our HTML/CSS in a suboptimal way.
(MoinMoin:MoinMoinBugs/InternetExplorer)
Workaround: use a non-broken browser like FireFox / Mozilla.
Fixed in MoinMoin 1.3.2.
* Passwords using non-ascii do not work.
(MoinMoin:MoinMoinBugs/NonAsciiPasswordsBroken)
* The TOC macro is broken partly.
(MoinMoinBugs/TableOfContentsBrokenForIncludedPages,
MoinMoinBugs/TableOfContentsLacksLinks)
* See also: http://moinmoin.wikiwikiweb.de/MoinMoinBugs
Version 1.3.0 (2004-12-06, Revision moin--main--1.3--patch-400)
As you see from the length of the 1.3 changes below, 1.3 is a major(!)
upgrade. We could have also named it "2.0", but we decided against.
So take the time for reading the informations thoroughly and do the
migration exactly as we tell you - this is no 5 minutes upgrade!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!! We heavily changed configuration, data encoding, dir layout: !!!
!!! * the default encoding changed to utf-8. !!!
!!! * also, we changed the escaping for special chars to %XX%YY in !!!
!!! URL and (xxyy) in file system. !!!
!!! * layout of data dir changed completely !!!
!!! If you upgrade an existing wiki, you must run the migration !!!
!!! scripts or you will get data corruption or other problems. !!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
HINT: Upgrading your wiki - critical information
If you are NOT starting from scratch, you MUST convert your existing
data - see README.migration for details.
If you use ##language: xx comments on your OWN pages, you should also run
repair_language script. Not needed for help/system pages as we already
have done that for you.
MoinMoin uses Unicode internally now (UCS-2 with 16 bits or UCS-4 with
32 bits, depending on your Python installation). The encoding used
for page files and html output is set by config.charset.
Moin 1.3 uses utf-8 encoding only, there is NO SUPPORT for using a
charset different from utf-8 with 1.3. If you try, you are on your own.
Directory layout
Directory layout was heavily changed. Each page now is a directory,
containing page revisions, attachments, cache files and edit-log.
You can delete a page or move a page from one wiki to another
easily. Look at the wiki/data directory to see.
Example:
old: data/text/FrontPage
new: data/pages/FrontPage/revisions/00000042
data/pages/FrontPage/current (contains: 00000042)
old: data/backup/FrontPage.xxxxxxxx
new: data/pages/FrontPage/revisions/00000023
For cleaning up cache files, use MoinMoin/scripts/cachecleaner.py
(see comments in script).
Python / Libs
* For using RSS, you need to have PyXML installed:
Python 2.4* -> PyXML 0.8.4 (cvs version)
Python 2.3.x -> PyXML 0.8.3
Python 2.2.2+ -> ???
This will also make "Live Bookmarks" of Mozilla Firefox working.
New: if you don't have PyXML installed, the RSS icon on RecentChanges
will not be displayed any more. Python with no PyXML installed
generates invalid RSS XML.
Page names handling
* Handling of special characters in file names changed from _xx format
to (xx...) format.
* In URLs, moin now uses %xx%yy quoting, (because this is supported by
browsers), and sub pages use "/" instead of the ugly "_2f".
* Underscore character "_" is used now as a space character " " both
in file names and URLs. " " and "_" will be handled equivalent at most
places in the future (represented as "_", rendered as " ").
* To prevent wiki abuse and user typing errors, page names are normalized
in URLs, query strings, the "go" box and when renaming pages. This
include leading, trailing and multiple slashes and white space. Certain
invisible unicode characters are removed from page names.
* Group page names are restricted even more, any non unicode alpha-numeric
character is removed. This is done to enable changing acl syntax in
the future. The restriction might be loosen on future versions.
* You can edit config.page_invalid_chars_regex to control which characters
are allowed in page names (Changing it is not supported).
* When you enter page name, it is normalized and you are redirected to
the normalized page, or if nothing left (e.g '/////'), to FrontPage.
* When renaming a page to a name that can be normalized to an empty string,
the new page name will be "EmptyName" and the user will not get an
error message.
Underlay directory
* Pages (especially system and help pages) are now located in an underlay
directory (data_underlay_dir). You will see the pages there if they are
NOT covered (overlayed) by a page in the normal pages directory
(as set using data_dir).
MAKE SURE THAT data_underlay_dir IS CORRECT OR YOU WILL SEE MANY EMPTY
PAGES ONLY IN A NEW WIKI.
* If you edit a page that is shown from underlay directory, it will be
copied to the normal page directory on save (copy-on-write).
* You can use one copy of the underlay directory shared by many
wiki instances. Each wiki will then have only your local, self-made
wiki pages in its data directory, and only system and help pages in the
single, shared underlay directory - this simplifies upgrades a lot.
* It is recommended to keep your underlay system and help pages immutable
using acl, so you can upgrade your wiki easily. The default help and
system pages already have those ACLs (using MoinPagesEditorGroup).
* Do not forget to remove your old help and system pages after migrating
your wiki. We don't provide a script for that as that would be
dangerous for edited pages. Just use some file manager (e.g. mc) to
clean the data/pages/ directory. As soon as you have removed the
system pages there, you will see the new pages in the underlay dir.
See the EditedSystemPages page for a list of pages that exist in both
data and underlay directory (use this page as admin!).
Multiple languages
* New file name quoting method allow 50% longer page names in languages
that use more than one byte per character, like Hebrew, Korean etc.
* Configuration file uses 'utf-8' encoding now. Certain values that are
marked with [Unicode] can use any character in your language. Examples
are page names in navi_bar, page types regular expressions and site name.
* For configuration examples adopted to your language, check ConfigMarket
in the MoinMoin wiki.
* The system and help pages that come with moin are now in utf-8.
* MissingPage system page localized, should display in your language.
* We did many i18n (translation) updates.
* CSS file use utf-8 encoding. User css is also expected to be utf-8.
This is relevant only if you use non-ASCII values in the CSS file.
* config.upperletters and config.lowerletters were removed.
We now use a pre-made ucs-2 spanning set and you usually don't have to
change it. See MoinMoin/util/chartypes.py if you're interested.
* ACL works with any user name or group name in any language, even names
with spaces.
* Now you can use any charset in config.charset. Note: only utf-8 is
a supported configuration!
* Improved url handling, now creating pages directly from the browser
url box with non-ascii names works in most cases, even when
config.charset is not utf-8.
* When using non-utf-8 config.charset, characters in URLs that does
fit in the charsets are replaced with "?" (instead of crashing).
* All themes and most macros and actions are Right to Left friendly.
Full RTL support planned for 1.3 release.
* If page language is specified with #language processing instruction
the page is displayed in the correct direction. Pages without
language are displayed using the wiki default_lang.
Multiple configurations
* You can run multiple wikis from the same wiki directory or server.
For example, you can run one Twisted server that serve multiple wikis,
instead of running multiple servers. Samples of the new configuration
are supplied in wiki/config/*.
* You can't just use your old moin_config.py file. It is now called
wikiconfig.py and the config variables now have to be in a class
"Config" and that class must inherit from
MoinMoin.multiconfig.DefaultConfig - see the provided wikiconfig.py
sample for details.
This is very useful, e.g. you could derive a GermanConfig from
DefaultConfig. After that, you can derive configs for wikiA and wikiB
from that GermanConfig.
* farmconfig.py contains a mapping attribute called "wikis" with pairs of
wikiconfig module name and regular expression. The regular expression
is matched against the URL of the request and the first matching entry
determines the config module to be imported by MoinMoin.
* If you use farmconfig.py's "wikis" mapping, then any wiki has a private
config module, named after the wiki - e.g. wiki named moinmoin would
use moinmoin.py.
* If you only have a single wiki, you do not need farmconfig.py. just make
a wikiconfig.py and it will be used no matter what URL is requested.
* There is one common global "config" that holds sitewide settings (like
umask or charset) - you do not need to change settings there.
This file is located in the MoinMoin code: MoinMoin/config.py.
General configuration
* SecurityPolicy now uses "write" instead of "edit" (so it is may.write
now). This is to get it in sync with ACLs.
* SecurityPolicy now automatically can use everything in acl_rights_valid.
* There is a new config option "config_check_enabled". It will warn about
any unknown variable name (probably typo) to stderr or error.log.
If something doesn't work at all and changing the config does no
difference, switch it on and look at the error message.
* The sample config file comes with config_check_enabled = 1. If you
introduce additional variables yourself, you definitely want to switch
that check off or it will fill your log.
* If you define "page_front_page" variable, this name will show in the
navigation bar now, instead of the default "FrontPage".
New search engine
* Full text and title search do support multiple search terms now -
see HelpOnSearching for details.
* Regular expressions are still supported but have to be turned on per
search term. Search terms in macros using regular expressions will have
to be fixed.
* The URL interface of the search engine has also changed. Links that
point directly to search actions may be broken.
User names
* User names can not use group names, even if ACLs are not enabled.
This will prevent error later, if you start to use acl in the future
(acl is going to be mandatory in 1.5).
* User names are not restricted any more to only CamelCase.
* To prevent imposing as other users, leading, trailing and multiple
whitespace in user names is not allowed. Only Unicode alpha numeric
characters are allowed, with optional one space character between
words.
* When a user name with a group name or "bad" name is trying to
access the wiki, he is redirected to the UserPreferences page and
asked to create a new account.
* When trying to login or create a new account with a bad name,
correct error message is displayed in all cases.
CGI
* You can not use your old moin.cgi file, as we removed cgimain.py
(was deprecated since 1.2). Copy the new file from the server dir.
Moin servers - Twisted and standalone
* Configuration self checking on startup. Will raise an error in case
of bad configuration or non-accessible directories.
* Both use shorter and identical configuration options.
* Server scripts contain detailed comments and examples.
* Configuration defaults changed to fit most users.
* There is memory profiler option for debugging, switched off by default.
* If you perform a standard install, server scripts should run out
of the box or with minimal change.
Twisted server
* All code moved into the new server package, the server script
contains only configuration options.
* Listen to more than one interface with "interfaces" list.
* Code updated to new Twisted API.
* Use mointwisted script to start and stop the server, using
"mointwisted start" and "mointwisted stop".
* The Twisted server runs as daemon by default.
* All moin Twisted files are called now mointwisted instead of
moin_twisted.
* Fixed getting username from Twisted request (http auth)
Standalone server
* Configuration moved from moin_config.py to moin.py.
* If run as root, you can set both user and group for the server.
* Can use logfile instead of logging to stderr.
* Fixed missing unquoting of query string (caused problems in rare cases).
mod_python server
* moin_modpy server files renamed to moinmodpy.
Wiki Markup
* '''strong''', ''em'' and __underline__ have now paragraph scope. You can
set these attributes on words level. For multiple paragraphs, wrap each
with needed markup.
* If you leave unclosed ''', '' and __ markup, its is closed when the
paragraph ends.
User interface
* Due to many changes in CSS files, the wiki may look "broken" until
your reload once or twice, or empty your browser cache.
* The "Send mail notification" checkbox is replaced by "Trivial change"
checkbox. The default behavior did not change - regular edit is not
a trivial change, and mail will be sent to subscribes. If you check
trivial change, mail will be sent only to users who selected to
get trivial changes in their user preferences.
* New theme "modern" has been added, and used as default theme.
* classic and rightsidebar improved.
* viewonly theme removed, as any theme can be use now as viewonly
by using #acl All:read in the wikiconfig.
* All themes use new navibar, displaying both wiki links, user links
and the current page.
* navibar and pagetrail use now shortened page names, so very long
names does not break the interface visually.
* All themes have improved search interface at the top of the window.
* Only avaiable actions are displayed, so most situations when a user
try to do something he can't do are prevented.
* When creating a new page, no action is available until the page
is created. You can't attach files to non-existing page any more.
* Non registered users get a "login" link. Registered uses get
"username" link to their home page, and "user preferences" link.
* Messages more clear using bold type, designed by css.
* Few useless messages removed (but there are many more)
* Default wiki logo uses the wiki name instead of the MoinMoin troll
logo.
Other fixes and changes
* Most generated html code is valid "html 4 strict". There are still
some problems that still have to be fixed, mainly macros, table
attributes, and inline markup crossing (<a><b></a></b>).
* WantedPages can include and exclude system pages, which makes it
much more useful.
* Fixed a bug in TitleIndex where not all system pages are excluded.
* RenamePage action now renames everything, including backups, page
history, attachments. It does not change toplevel editlog, though.
After you rename a page, you are redirected to the new page.
* Syntax colorization supports more languages (Java, C++, Pascal)
* Inline: display of attachments was extended. A Parser now knows which
extensions it can handle.
* TableOfContents and Include macros now cooperate a bit better. There
are still problems with multiple Includes of the same page.
* Excluded actions at bottom of page are not displayed any more.
* Editor: removed the columns size setting, just using 100% of browser
window width (it didn't work because of that anyway). Also removed that
"reduce editor size" link at top of editor as you would lose your
changes when using it.
* Removed the option to choose text smileys instead of images, this made
more trouble than it was worth. The text version is still given in ALT
attribute.
* Moved stuff from contribution/ to MacroMarket page on MoinMoin wiki
* Some nasty people try to use a running moin as a proxy (at least they
did on moinmaster.wikiwikiweb.de:8000, maybe due to the magic port
number). We changed the code to check for that and just return 403
in that case. Moin can not be used as a proxy anyway.
* moin.cgi?test was removed in favor of a new buildin test
action. It works for all deployments, just use ?action=test.
* Sending mail does use tls if server supports it.
3rd party developer notes
* Themes should be now sub class of MoinMoin.theme.ThemeBase. Sub
classes will get automatically all new improved user interface
elements for free.
* Theme authors should update their theme for 1.3. Some keys removed
from them dict. See ThemeBase class in MoinMoin/theme/__init__.py.
* Actions writers should call request.setContentLangauge with the
correct language used by the action. This enable themes and other
code to use correct direction.
* The Formatter interface was changed. Formatters and parsers using
the formatter interface have to be adjusted.
* started deprecation of Processors: they are still recognized, but
implementors should start to rewrite their Processors as Parsers.
A processor with the same name as a parser in a pre #! section is
currently preferred. This will change in the next release.
Deprecation notes
* Processors are deprecated, see section above.
* Using the cookie (or the login url with ID) only and not setting (or
setting and not remembering) your email/password in UserPreferences
is DEPRECATED. Those quite unsecure methods will likely be dropped
in next moin version.
* Operating with acl_enabled = 0 is also DEPRECATED. Due to some other
improvements planned, we will have to operate with ACLs enabled ONLY
in a future moin version, so this setting will likely be dropped.
So clean up your user accounts (see moin_usercheck.py) and switch ACLs
on NOW.
There are no drawbacks, so you will like it. Having ACLs enabled
doesn't mean you really have to USE them on wiki pages...
* allow_extended_names = 0 is deprecated (default was/is 1).
Future versions will be able to use extended names (aka free links) in
any case and the config setting will be removed.
* allow_subpages = 0 is deprecated (default was/is 1).
Future versions will be able to use subpages in any case and the config
setting will be removed.
* attachments = {...} - we would like to remove that setting because of
several reasons:
* when not being extremely careful, this can easily lead to security
problems (like when uploading a .php exploit and then executing it
by accessing it directly via web server)
* makes code more complicated - code that we want to change completely
in next version
If you need that feature, speak up now and tell us your reasons WHY you
need it.
Version 1.2.4 (2004-10-23, Revision 1.187)
This will probably be the last 1.2.x release as we are soon doing release
candidates for 1.3 release (with big internal changes) and are expecting
release 1.3 in december 2004.
Fixes:
* fixed "None" pagename bug in fullsearch/titlesearch
* fixed projection CSS usage
* the compiled page is removed when a page is deleted, so no ghost page
appears after deletion
* fixed AbandonedPages day-break problem
* fixed [[GetVal(WikiDict,key)]]
* the msg box is now outside content div on PageEditor, too
* privacy fix for email notifications: you don't see other email addresses
in To: any more. mail_from is now also used for To: header field, but
we don't really send email to that address.
* privacy fix for /MoinEditorBackup pages that were made on previews of
pages that were not saved in the end
* fix double content div on PageEditor preview
Other changes:
* workaround for broken Microsoft Internet Explorer, the page editor now
stops expanding to the right (e.g. with rightsidebar theme).
Nevertheless it is a very good idea to use a non-broken and more secure
browser like Mozilla, Firefox or Opera!
* from MoinMoin.util.antispam import SecurityPolicy in your
moin_config.py will protect your wiki from at least the known spammers.
See MoinMoin:AntiSpamGlobalSolution for details.
* xmlrpc plugin for usage logging, currently used for antispam accesses
* (re-)added configurable meta tags:
* html_head_queries = '''<meta name="robots" content="noindex,nofollow">\n'''
* html_head_posts = '''<meta name="robots" content="noindex,nofollow">\n'''
* html_head_index = '''<meta name="robots" content="index,follow">\n'''
* html_head_normal = '''<meta name="robots" content="index,nofollow">\n'''
* i18n updates/fixes
* New UserPreferences switch:
you may subscribe to trivial changes (when you want to be notified about ALL
changes to pages, even if the author deselected to send notifications).
* New AttachList and AttachInfo macros - thanks to Nigel Metheringham and
Jacob Cohen.
Version 1.2.3 (2004-07-21, Revision 1.186)
Fixes:
* fixed NameError "UnpicklingError" in user.py
* fixed version number in moin.spec
* reverts done by bots or leechers
There was a bad, old bug that triggered if you did not use ACLs. In that
case, moin used some simple (but wrong and incomplete) function to
determine what a user (or bot) may do or may not do. The function is now
fixed to allow only read and write to anon users, and only delete and
revert to known users additionally - and disallow everything else.
* avoid creation of unneccessary pages/* directories
* removed double content divs in general info and history info pages
* fixed wiki xmlrpc getPageHTML
* fixed rightsidebar logout URL, also fixed top banner to link to FrontPage
* use config.page_front_page and .page_title_index for robots meta tag
(whether it uses index,follow or index,nofollow), not hardcoded english
page names
* ACL security fix for PageEditor, thanks to Dr. Pleger for reporting
* default options for new users are same as for anon users
Version 1.2.2 (2004-06-06, Revision 1.185)
Fixes:
* python related:
* own copy of difflib removed
Until moin 1.2.1 we had our own copy of python 2.2.3's difflib coming
with moin. This was to work around some problems with broken older 2.2
python installations. We removed this now because if you have py 2.3,
there is even a better difflib coming with python (and that fixes an
extremely slow diff calculation happening in some rare cases).
So the good news is that when you run python 2.3, you don't need to do
anything and it will run great. If you run python 2.2.3, it will mostly
work good and you also don't need to do anything. The bad news is that
if you run an old and broken 2.2 installation (2.2.1, maybe 2.2.2) you
will have to fix it on your own (just copy difflib.py from python 2.2.3
over to your python 2.2.x installation).
But better upgrade to python 2.3 (for debian woody, there's a backport),
as 2.3 generally runs better and faster than 2.2.
* scripts changed to use #!/usr/bin/env python (not /usr/bin/python2.2)
* user accounts and ACLs:
* we now require the user to specify a password for a new account (you
were not able to login without a password anyway)
* it is not allowed any more to create user accounts with user names
matching config.page_group_regex - please check manually that you do
not already have such users existing (like a user named "AdminGroup"):
cd data/user ; grep name=.*Group * # there should be no output!
* subscription email sending now honours ACLs correctly
* markup / rendering / user interface fixes:
* fixed merging multiple lines indented by the same amount of blanks
* ## comments don't break tables in two parts
* added a "remove bookmark" link to RecentChanges
* fixed action=titleindex (added \n after each entry)
* RSS fixes:
* non-ASCII characters should work now
* RSS feed (Recentchanges?action=rss_rc) gives UTC timestamps now
* removed attribute breaking RSS feed on RecentChanges
* better email generation:
* if you use python >=2.2.2, we add a Message-ID header to emails
* if you use python 2.2.1, there is no email.Header. Instead of crashing
(like previous moin 1.2.x releases), we just use the subject "as is" in
that case. If it is not ASCII, this is not standards compliant.
* If you have >=2.2.2 it will use email.Header to make standards compliant
subject lines.
* use config.mail_from as sender address when sending "lost my password"
emails
* file attachments:
* fixed for standalone server
* attachment URLs (when handled by moin) don't include server name
* fixed some wrong &amp; in html src
* better themeability:
* some entries in dict "d" where only present in header theme calls, some
only in footer theme calls. Now almost all is present in both calls.
* added some missing "content" divs so sidebar themes look better
* fixed some crashes producing backtraces:
* no IOError when diffing against deleted page
* no backtrace in xml footnote generation
* no SystemInfo crash when no editlog exists in new wikis
* xmlrpc.getRecentChanges fixed
* MoinMoin.util.filesys.rename is now a wrapper around os.rename that
fixes os.rename on broken win32 api semantics
Other Changes:
* saving traffic and load by improved robot meta tag generation:
* "noindex,nofollow" on queries and POSTs
* "index,follow" on FrontPage and TitleIndex (give robots a chance ;))
* "index,nofollow" on all other pages (hopefully saving lots of senseless
requests for page?action=...)
* removed config.html_head_queries (was used for same stuff)
* added russian i18n (utf-8)
* misc. other translation updates / fixes
* added rightsidebar theme
* TitleIndex now folds case, so "APage" and "anotherPage" are both under
letter "A".
* added macro/PageHits.py - it calculates the hits each page gets since
beginning of logging
* Full text and title search do now support multiple search terms -
see HelpOnSearching for details
* The Formatter interface was changed. Formatter and parser using
the formatter interface have to be adjusted.
Version 1.2.1 (2004-03-08, Revision 1.184)
Fixes:
* minimum requirement to run moin 1.2/1.2.1 is python 2.2.2
* not: 2.2(.0), as this does not have True/False
* not: 2.2.1, as this does not have email.Header. You maybe can work
around that one by:
* getting the python 2.2.x (x>=2) /usr/lib/python2.2/email directory
* putting it into directory 'x' (whereever you like)
* doing a sys.path[0:0] = ['x'] in moin.cgi [or other appropriate place]
No guarantee, this is untested.
* Twisted: the http headers missed the charset data, fixed
* mod_python: fixes for mod_python 2.7
* wiki/data/plugin/__init__.py added - fixes not working plugin modules
* plugin processors work now, too
* fixed displaying non-existent translations of SiteNavigation in footer
* fixed zh-tw iso name (wrong zh_tw -> correct zh-tw)
* fixed reversed diffs in RecentChanges RSS
* fixed "last change" info in footer (wasn't updated)
* fixed event.log missing pagename (and other) information
* fixed horizontal line thickness >1
* fixed setup.py running from CVS workdir
* fixed crash when doing action=info on first revision of a page
* fixed hostname truncation in footer
* minor css fixes
* fixed clear msg links (they missed quoting, leading to strange page
names when you click on some of them)
* fixed python colorizer processor
* fixed quoting of stats cache filenames
* catched "bad marshal data" error when switching python versions
Other changes:
* updated danish (da) i18n
* updated japanese (ja) i18n
* added serbian (sr) i18n
* added chinese (zh) i18n
* added a simple "viewonly" theme based on classic theme - you can use
this as default theme, so anonymous users won't get the usual wiki stuff,
but a far simpler (and less powerful) user interface.
It also displays the navibar at the left side.
* added moin.spec for building RPMs
* included MoinMoin/i18n/* into distribution archive (nice for translators)
* included some stuff under MoinMoin/scripts - xmlrpc-tools and account
checking stuff. removed some version control clutter from the dist
archive, too.
* code colorization was refactored and some new languages (Java, C++,
Pascal) where added.
* inline: display of attachments was extended. A Parser now knows which
extensions it can handle.
Version 1.2 (2004-02-20, Revision 1.183)
New features:
* MoinMoin now requires Python >=2.2.2.
You get even better results with Python2.3 (20-30% more speed,
sometimes even much more).
* by refactoring request processing, we made it possible to run moin under
persistent environments:
* twisted-web (http://twistedmatrix.com)
* httpdmain.py (use moin.py for starting this mini server)
* mod_python
* FastCGI
Of course, CGI is still possible.
* wiki pages will be compiled to bytecode now (by default), so no need for
slow parsing/formatting on every view ("WASP", see caching_formats)
* when using a persistent environment (like twisted) and WASP, you get up
to 20x speed - compared to CGI and moin 1.1
* added support for diffs between arbitrary revisions.
* removed requirement of the external diff utility
* config.auth_http_enabled (defaults to 0) - use this to enable moin
getting your authenticated user name from apache (http basic auth,
htpasswd) - if you enable this, your basic auth username has to be the
same as your wiki username.
Should work with CGI, FCGI and maybe even with mod_python.
Does not change behaviour of moin under twisted or standalone server.
* config.tz_offset = 0.0 sets a default timezone offset (in hours
from UTC)
* config.cookie_lifetime (int, in hours, default 12) sets the lifetime of
the MOIN_ID cookie:
== 0 --> cookie will live forever (no matter what user has configured!)
> 0 --> cookie will live for n hours (or forever when "remember_me")
< 0 --> cookie will live for -n hours (forced, ignore "remember_me"!)
* added themeing and some themes (if you improve the existing themes or
make nice new ones, please contribute your stuff!). The default theme is
set by config.theme_default (and defaults to 'classic').
* now supporting plugin directory for parsers, processors, themes, xmlrpc.
* action=info now defaults to showing page revision history again
* all actions accessing the logfile (as RecentChanges or history) are now
much faster
* #refresh processing instruction, config.refresh
* config.refresh = (minimum_delay, target_allowed)
* minimum delay is the minimum waiting time (in seconds) allowed
* target_allowed is either 'internal' or 'external', depending on
whether you want to allow only internal redirects or also
external ones. For internal redirects, just use the Wiki pagename,
for external, use http://... url.
* #refresh 3 == refresh this page every 3 seconds
* #refresh 5 FrontPage == internal redirect to FrontPage in 5s
* #refresh 5 http://google.com/ == redirect to google in 5s
Use very carefully! Allowing a low minimum_delay and putting a #refresh
on RecentChanges might slow down your wiki significantly, when some
people just let their browser refresh and refresh again. Also, it does
cause quite some traffic long-term. So better do not use this without
good reason! Default is None (switched off).
* hide most UserPreferences options before user has logged in, less
confusing for new users
* "config.page_dict_regex" defines what pages are dictionary definitions
Currently dictionaries are used for UserHomePage/MyDict where you can
define key:: value pairs that get processed like @DATE@ expansion when
saving a page. The 2 "@" will be added to your keys automatically.
Please do not use @xxx@ strings on the right side (value), results may
vary if you do.
You can also access wiki dictionaries by using the internal macro
[[GetVal(page,key)]]" - that will go to page "page" and return the
value (right side) corresponding to "key".
Implementation note: groups are a subset of the dictionary functionality.
* standalone server should work now (see server/moin.py), so you don't
need to setup apache or twisted for a local personal wiki, you only need
python and moin for that now, no additional stuff any more!
* if you run your wiki with charset = "utf-8" (the default is still
iso8859-1), you might want to have a look at contributions/utf8-pages/
to see if there are already translated system pages for your language.
Fixes:
* new importPlugin routine (the old one didn't work correctly)
* removed 0xA0 characters breaking utf-8
* system page recognition now uses wiki groups (see AllSystemPagesGroup),
fixing the long-time broken system page exclusion on TitleIndex.
* mostly HTML 4.01 Strict compliant HTML
* design is done by CSS now, HTML is semantic markup only
* removed target attribute from links, also [^NewWindow] markup - this
is a HTML 3.2 feature and not valid in HTML 4.01
* updated TWikiDrawPlugin to 20021003 version, with further modifications
including source. It can draw imagemaps now!
* fixed email headers and encoding
* Changed moin-usercheck to adhere to scripting standards; no
proprietary config changes needed any more (added --config);
--wikinames is now part of the usage message.
* config.umask now defaults to 0770 - if you give world r/w access, ACLs
could be rather pointless...
Other:
* lots of internal code refactoring and optimization
* began moving src code documentation to epydoc, see "make epydoc"
Known problems:
* theme support is neither complete (although covering most important
stuff) nor perfect - work on that will continue...
* we removed some html from system messages (the boxes at top of page you
get after some actions), so it currently looks less nice than before.
* html is not completely validating and it is not xhtml - this will be
fixed as soon as we have the infrastructure for that (other parser, DOM)
* problems with rtl (right-to-left) languages, will be fixed in 1.3
* if you change moin_config or switch themes, moin will still use already
cached page content. For the config this can be fixed by touching
MoinMoin/version.py (or simply deleting everything in
data/cache/Page.py). If you get more annoyed by this than pleased by
caching speedup, you can also switch off caching (see docs on
caching_formats).
Version 1.1 (2003-11-29, Revision 1.178)
New features:
Configuration:
* config.default_lang lets you set a default language for users not
having specified language in their browser or UserPreferences
* "config.page_category_regex" defines what pages are categories
* replaced `config.page_template_ending` by a more flexible setting
named `config.page_template_regex`
* the same with config.page_form_regex
* "config.page_group_regex" defines what pages are group definitions
Currently groups are used for "user groups" (see ACLs) and "page
groups" (see AllSystemPagesGroup).
* robot exclusion from all pages except the standard view action,
via the config.ua_spiders regex (reduces server load)
* "maxdepth" argument for the TableOfContents macro
* config.title1, config.title2, config.page_footer1,
config.page_footer2 can now be callables and will be called with
the "request" object as a single argument (note that you should
accept any keyword arguments in order to be compatible to future
changes)
* "config.html_pagetitle" allows you to set a specific HTML page
title (if not set, it defaults to "config.sitename")
* navi_bar / quicklinks can now contain free-form links, i.e.
entries of the form "[url linktext]" just like in wiki pages
* if a quick link starts with '^', it opens in a new window; help
now opens in a new window also
* `config.smileys` for user-defined smileys
* `config.hosts_deny` to forbid access based on IP address
* `config.mail_login` can be set to "user pwd", if you need to
use SMTP AUTH
* `config.edit_locking` can be set to None (old behaviour, no
locking), 'warn <timeout mins>' (warn about concurrent edits, but
do not enforce anything), or 'lock <timeout mins>' (strict locking)
* optionally showing a license text on editor page, use:
config.page_license_enabled = 1
Optionally use these to customize what is shown there:
config.page_license_text = "... your text ..."
config.page_license_page = "MyLicensePage"
See the default values in MoinMoin/config.py for details and
override them in moin_config.py, if needed.
* `config.shared_intermap` can be a list of filenames (instead of a
single string)
Authenticaton / Authorization:
* added ACL support, written by Gustavo Niemeyer of Conectiva and
Thomas Waldmann. See HelpOnAccessControlLists for more infos.
You should use MoinMoin/scripts/moin_usercheck.py before activating
ACLs or some users with bad or duplicate accounts might get into
trouble.
* A user account can be disabled using moin_usercheck.py or
UserPreferences page. Disabling, but keeping it is good for edit
history.
* changed security default: deletion only available to known users
* support for Basic authentication (Apache style: AUTH_TYPE="Basic",
REMOTE_USER="WikiUserName"). If authentication is there, user
will be in ACL class "Trusted".
* support for username / password login
The username / password login will ONLY work, if you define a
password. With an empty password, username / password login is not
allowed due to security reasons. Passwords are stored encrypted
(format similar to Apache SHA) and can also be entered in the
UserPreferences form in this format. When requesting login
information by email, the password is also sent in this encrypted
format (use copy&paste to fill it in the form).
...?action=userform?uid=<userid> is still possible, so if you have
bookmarks, they will still work). The input field for the ID was
dropped.
NOTE: using the userid for login purposes is DEPRECATED and might
be removed for better security soon.
* after logging in, you will get a cookie valid until midnight.
The next day, the cookie will expire and you will have to login
again. If you don't want this, you can check the "remember me
forever" option in UserPreferences.
* if the page file is read-only, you get a message (i.e. you can now
protect pages against changes if you're the wiki admin).
Note: you can do that easier using ACLs.
Markup / Macros / Actions:
* RandomQuote macro (and even parses Wiki markup now)
* `[[Navigation]]` macro for slides and subpage navigation
* [[ShowSmileys]] displays ALL smileys, including user-defined ones
* the Include macro has new parameters (from, to, sort, items) and
is able to include more than one page (via a regex pattern)
* `MailTo` macro for adding spam-safe email links to a page
* if a fancy link starts with '^' (i.e. if it has the form
"[^http:... ...]"), it's opened in a new window
* because of that, the NewWindow macro was removed from contrib
* "#pragma section-numbers 2" only displays section numbers for
headings of level 2 and up (similarly for 3 to 6)
* ../SubPageOfParent links
User interface:
* new fancy diffs
* Page creation shows LikePages that already exist
* editor shows the current size of the page
* editor returns to including page when editing an included page
* Visual indication we're on the editor page (new CSS style)
* selection to add categories to a page in the editor (use preview
button to add more than one category)
* if user has a homepage, a backup of save/preview text is saved as
a subpage UsersHomePage/MoinEditorBackup
* added "revert" link to PageInfo view (which makes DeletePage more
safe in public wikis, since you can easily revive deleted pages
via revert)
* Selection for logged in users (i.e. no bots) to extend the listing
of recent changes beyond the default limits
* Activated display of context for backlinks search
* Subscriber list shown on page info
* LikePages shows similar pages (using difflib.get_close_matches)
* last edit action is stored into "last-edited" file, and
displayed in the page footer
* reciprocal footnote linking (definition refers back to reference)
* "Ex-/Include system pages" link for title index
Note: system/help pages algorithm is still mostly broken.
* list items set apart by empty lines are now also set apart
visually (by adding the CSS class "gap" to <li>)
* "save" check for security.Permissions
* Added Spanish, Croatian and Danish system texts
* Added flag icons for the languages supported in "i18n"
* updated help and system pages, more translations, see also
AllSystemPagesGroup
* there was quite some work done on wiki xmlrpc v1 and v2 - it
basically works now.
Tools and other changes:
* moin-dump: New option "--page"
* there are some scripts MoinMoin/scripts/* using wiki xmlrpc for
backup and wiki page copying applications
* Updated the XSLT parser to work with 4Suite 1.0a1
* more infos in cgi tracebacks
* UPDATE.html is a HTML version of MoinMaster:HelpOnUpdating
Unfinished or experimental features:
* user defined forms
* XML export of all data in the wiki
* RST parser (you need to install docutils to use this)
* SystemAdmin macro
Privacy fixes:
* do not use / display user's email address in public places
SECURITY FIXES:
* Removed two cross-site scripting vulnerabilities reported by "office"
Bugfixes:
* Bugfix for PageList when no arguments are given
* Disallow full-text searches with too short search terms
* [ 566094 ] TitleIndex now supports grouping by Hangul Syllables
* fix for multibyte first char in TitleIndex
* Footnotes were not HTML escaped
* Numbered code displays are now in a table so that you can cut the
code w/o the numbers
* Bugfix for wrong mail notifications
* Create unique anchors for repeated titles
* [ 522246 ] Transparently recode localized messages
* [ 685003 ] Using "preview" button when editing can lose data
* use gmtime() for time handling
* fixed negative gmtime() arguments
* [[Include]] accepts relative page names
* fixed ||NotInterWiki:||...||
-----------------------------------------------------------------------------
Version 1.0 (2002-05-10, Revision 1.159)
THIS IS THE LAST RELEASE WITH PYTHON 1.5.2 SUPPORT! If severe bugs
should occur, a maintenance release will fix them.
New features:
* security fix: "allow_xslt" has to be set to 1 in order to enable
XSLT processing; note that this defaults to 0 because XSLT is able
to insert arbitrary HTML into a wiki
* "action=content" for transclusion into static web pages; emits the
pure page content, without any <html>, <head>, or <body> tags
* "?action=links&mimetype=text/plain" works like MeatBall:LinkDatabase
* "Preferred language" and "Quick links" user settings
* Added "processor" concept, processors work on the data in "code
displays" and are called by a bangpath in the first line of data
* Processors: Colorize, CSV (see HelpOnProcessors)
* New icons: "{OK}", "(./)", "{X}", "{i}", "{1}", "{2}" and "{}"
(see HelpOnSmileys)
* FullSearch now displays context information for search hits
* DeletePage offers a textentry field for an optional comment
* Email notifications are sent in the user's language, if known from
the preferences
* @PAGE@ is substituted by the name of the current page (useful
for template pages)
Unfinished features:
* user defined forms
* XML export of all data in the wiki
* RST parser (you need to install docutils to use this)
* XMLRPC interface
Bugfixes:
* Syntax warning with Python 2.2 fixed
* Macro-generated pagelinks are no longer added to the list of links
* error codes returned by "diff" are reported
* fix for attachments on pages with non-USASCII names
* correct handling of spaces in attachment filenames and URLs
-----------------------------------------------------------------------------
Version 0.11 (2002-03-11, Revision 1.151)
Most important new features: file attachments, definition list markup
(glossaries), change notification via email, variable substitution when
saving pages, edit preview, and improved documentation.
Note that the RSS features require a recent PyXML (CVS or 0.7) due to
bugs in the namespace handling of xml.sax.saxutils in earlier versions.
This is (hopefully) automatically detected on every installation.
Statistical features are NOT designed to work with Python 1.5.2 and
require Python 2.0 or higher. Overall, MoinMoin 0.11 is not explicitely
tested for 1.5.2 compatibility.
New features:
* XML formatting now (most often) produces well-formed, and, depending
on proper layout of the wiki page, valid StyleBook XML
* Headers are now automatically numbered, unless you set the config
item 'show_section_numbers' to 0
* "#pragma section-numbers off" (or "0") switches that off explicitely,
and "on" or "1" enables numbering
* Added a "contributions" directory for 3rd party extensions
* AttachFile action, contributed by Ken Sugino; note that you have
to enable this action because of the possibility of DoS attacks
(malicious uploads), by adding this to your moin_config:
allowed_actions = ['AttachFile']
* "attachment:" URL scheme allows access to attachments, to get files
from other pages use "attachment:WikiName/filename.ext".
* New macros: Date(unixtimestamp) and DateTime(unixtimestamp) to
display a timestamp according to system/user settings
* Variable substitution when a page is saved, note that saving
template pages does NOT expand variables. Supported are:
@DATE@ Current date in the system's format
@TIME@ Current date and time in the user's format
@USERNAME@ Just the user's name (or his domain/IP)
@USER@ Signature "-- loginname"
@SIG@ Dated Signature "-- loginname date time"
@MAILTO@ A fancy mailto: link with the user's data
* Copied some new emoticons from PikiePikie
|| {{{ :-? }}} || :-? || tongue.gif ||
|| {{{ :\ }}} || :\ || ohwell.gif ||
|| {{{ >:> }}} || >:> || devil.gif ||
|| {{{ %) }}} || %) || eyes.gif ||
|| {{{ @) }}} || @) || eek.gif ||
|| {{{ |) }}} || |) || tired.gif ||
|| {{{ ;)) }}} || ;)) || lol.gif ||
* AbandonedPages macro
* Added definition list markup: {{{<whitespace>term:: definition}}}
* Added email notification features contributed by Daniel Sa
* SystemInfo: show "Entries in edit log"
* Added "RSS" icon to RecentChanges macro and code to generate a
RecentChanges RSS channel, see
http://www.usemod.com/cgi-bin/mb.pl?UnifiedRecentChanges
for details
* Added config.sitename and config.interwikiname parameter
* Better WikiFarm support:
* <datadir>/plugin/macro and <datadir>/plugin/action can be used
to store macros and actions local to a specific wiki instance
* config.shared_intermap can contain a pathname to a shared
"intermap.txt" file (i.e. one stored outside the datadir)
* added `backtick` shortcut for {{{inline literal}}} (has to be
enabled by "backtick_meta=1" in the config file); note that ``
is then a shorter replacement for '''''' escaping
* added inline search fields (at the bottom of each page)
* Added preview to the editor, including spell checking
* New languages: Chinese (Changzhe Han) and Portuguese (Jorge
Godoy), updated French (Lucas Bruand), added Korean (Hye-Shik
Chang) and Italian (Lele Gaifax)
* New SystemAdmin macro
* `[[Anchor(anchorname)]]` macro to insert anchors into a page,
and [#anchorname Anchor Links].
* User option to open editor view via a double-click
* Added commentary field to editor, recent changes and page info
* Page trails (user option)
* UserPreferences: checkboxes for double-click edit, page trail,
fancy links, emoticons, jump to last page visited, and some
other yes/no options
* "config.nonexist_qm" is now the default for a user setting
* `[[GetText(text)]]` macro loads I18N texts (mainly intended
for use on Help pages)
* table attributes via "||<attrlist> ... ||", more details on
http://purl.net/wiki/moin/HelpOnTables
* PythonFaq interwiki tag and support for $PAGE placeholder
* event logging, as the basis for future statistics
* "moin-dump" command line tool to create a static copy of
the wiki content
* "config.external_diff" allows to set an exact path to the
command, or change the name to for example "gdiff" if GNU
diff is not a native command in your UNIX flavour
* `[[PageSize]]` macro
* the interwiki name "Self" now always points to the own wiki
* config.title1 and config.title2 are inserted into the output
right before and after the system title html code (title1
is right after the <body> tag and normally undefined, title2
defaults to the "<hr>" above the page contents)
* Additional link on diff pages to ignore whitespace changes
* Subpages (config.allow_subpages, config.page_icons_up)
* super^script^, sub,,script,, and __underline__ markup
* `[[FootNote]]` macro
* many other new config options, see HelpOnConfiguration for
a complete list
* [[StatsChart(type)]] shows statistical charts (currently
defined types: hitcounts, pagesize, useragents)
* 'inline:' scheme works like 'attachment:', but tries to
inline the content of the attachment into the page;
currently knows about "*.py" sources and colorizes them
* support for Java applet "TWikiDrawPlugin" via
drawing:<drawingname> URL scheme (you need to activate
the AttachFile action if you want drawings)
* numeric entities (&#nnnnn;) are now optionally NOT escaped,
which allows you to insert more characters into a Latin-1
page, especially the Euro symbol
* navi_bar is now a list of page names which should be linked
on every page
* test.cgi is now rolled into moin.cgi, and can be called
by adding "?test" to the wiki base URL. Also, as a security
feature, the server's environment is only shown for requests
local to the web server.
Unfinished features:
* user defined forms
* XML export of all data in the wiki
Documentation:
* extended the online help ("Help*" pages)
* German help pages (thanks to Thomas Waldmann)
Bugfixes:
* #425857: python Parser bug on the second call
* #424917: Caching control
* #465499: Two HTTPS problems
* #491155: FrontPage hardcoded
* Handling of inbound UTF-8 encoded URIs (only with Python >= 2.0)
* Fix for subtle changes in "re" of Python 2.2
* User-provided URLs are now never URL-escaped, which allows appending
#anchors and using %20 for spaces in InterWiki links
-----------------------------------------------------------------------------
Version 0.10 (2001-10-28, Revision 1.134)
This version is still Python 1.5.2 compatible, but it's not extensively
tested for that version and some parts of the system might not work
there, especially seldom used macros and actions. Bug reports welcome!
New features:
* "#deprecated" processing instruction
* config entry "SecurityPolicy" to allow for customized permissions
(see "security.py" for more)
* added distutils support
* though not extensively tested, the standalone server now does POST
requests, i.e. you can save pages; there are still problems with
persistent global variables! It only works for Python >= 2.0.
* "bang_meta" config variable and "!NotWikiWord" markup
* "url_mappings" config variable to dynamically change URL prefixes
(especially useful in intranets, when whole trees of externally
hosted documents move around)
* setting "mail_smarthost" and "mail_from" activates mailing
features (sending login data on the UserPreferences page)
* very useful for intranet developer wikis, a means to view pydoc
documentation, formatted via a XSLT stylesheet, for details see
http://purl.net/wiki/python/TeudViewer?module=MoinMoin.macro.TeudView
or MoinMoin/macro/TeudView.py
* "LocalSiteMap" action by Steve Howell <showell@zipcon.com>
* Added FOLDOC to intermap.txt
Bugfixes:
* Full config defaults, import MoinMoin now works w/o moin_config.py
* Better control over permissions with config.umask
* Bugfix for a UNIX time billenium bug (affecting RecentChanges
sorting and page diffs)
* data paths with directory names containing dots caused problems
-----------------------------------------------------------------------------
Version 0.9 (2001-05-07)
New features:
* XML page input (pages that start with "<?xml") and XSLT formatting
* Page caching, for now limited to XSLT processing (where it's
absolutely needed); new code & API to add the "RefreshCache" link
* Selection of common date/time formats in UserPreferences
* New action "titleindex" to support wiki introspection (MetaWiki);
see the new links below the index bar in "TitleIndex"
* UserPreferences: editable CSS URL for personal styles
* PageInfo: the editor's name or IP is shown for each change
* WantedPages: a new macro that lists links to non-existent pages
* OrphanedPages: a new macro that lists pages no other page links to
* Extensions to the FullSearch macro (see HelpOnMacros)
* Python syntax highlighting
* "DeletePage" action (has to be activated, see MoinMoinFaq)
* "Remove trailing whitespace from each line" option in the editor
* I18N (currently German and Swedish)
* Config option "url_schemas" to extend the supported URL types
* Improved tracebacks by using Ka-Ping's "cgitb"
Bugfixes:
* The editor now sends a "no-cache" HTTP header
* "PageList" results are now sorted
* New config parameter "html_head_queries": send additional header
for all pages EXCEPT the "normal" view; main usage is to have
only the normal pages indexed by a spider, not the edit, print,
etc. views (which cause multiple hits on the same information)
* Store the modification time of the page file in the editlog, not
the current time when the log entry is created
-----------------------------------------------------------------------------
Version 0.8 (2001-01-23)
New features:
* Page templates (create a new page using a template page, by Richard)
* Pluggable actions (by Richard)
* Added "diff since bookmark"
* Only "normal" URLs (outside of brackets) are converted to inline images
* Show number of backups in SystemInfo macro
* Show info on installed extension macros and actions
* New macro: [[BR]] for line breaks
* New action "LikePages" (again, Richard)
* Highlighting of search results, and of bad words when spellchecking
* Support for "file:" URLS
* "SpellCheck" action (Richard, me, and Christian)
* [[Include]] macro (you guessed it, Richard)
Bugfixes:
* Update bookmark with load time, not click time
* Changed CSS styles to better suit Netscape's broken handling of CSS
-----------------------------------------------------------------------------
Version 0.7 (2000-12-06)
New features:
* RecentChanges bookmarking
Bugfixes:
* SECURITY FIX
* Non-greedy extended WikiNames
-----------------------------------------------------------------------------
Version 0.6 (2000-12-04)
New features:
* [[UserPreferences]] macro and associated functions
* [[TableOfContents]] macro
* Mechanism for external macros (user extensions)
* Numbered list types and start offsets
Bugfixes:
* Search dialogs did not work on the FrontPage
* Add newline to text if last line has none (better diffs)
-----------------------------------------------------------------------------
Version 0.5 (2000-11-17)
New features:
* Major refactoring: code is now broken up into modules within the
"MoinMoin" package
* Diagnosis of installation via a "test.cgi" script
* Smileys
* "#format" processing instruction
* "##comment"
* [[RandomPage]] and [[RandomPage(number)]] macro
* configurable footer ("page_footer1" and "page_footer2")
* "#redirect" processing instruction
Bugfixes:
* Bugfix for broken CGI environment of IIS/4.0
* URLs and InterWiki links are now less greedy (punctuation at the end
is excluded, and "<" ends them, too)
-----------------------------------------------------------------------------
Version 0.4 (2000-11-01)
New features:
* Table markup "||a||b||c||"
* Headlines "= H1 =", "== H2 ==", and so on up to H5
* [[PageCount]] macro
* Added [[Icon(image)]] macro and macro arguments
* [[PageList(title-regex)]] macro
* New help system (set of help pages describing all features)
Bugfixes:
* Create complete URL for "Clear message" link
* Inline code spans needed cgi.escape
* Better fix for Python 1.6 "re" problems
* Fix for uppercase extensions in inline images ("foo.JPG")
* Fixed colspan in RecentChanges
* HR size is now limited to 8
* "}" ends an URL pattern (fixes URLs right at the end of code displays)
-----------------------------------------------------------------------------
Version 0.3 (2000-10-25)
New features:
* Check for inline images with InterWiki links (Spam:eggs.gif)
* New config variable "allow_extended_names", which enables markup for
wiki names containing ANY character like this: ["any chars"]
* New config variable "html_head"
* New macro [[SystemInfo]]
* Added inline code ("{{{" and "}}}" on the same line)
* Support for new config variable "max_macro_size"
Bugfixes:
* Don't treat sequences with a double colon (CPP::Namespace) as an
InterWiki link
* The local part of InterWiki links is now correctly URL-escaped
* Quickfix for a bug in 1.6's regular expressions
* Fixed "SpamSpamSpam" bug (multiple entries in word list)
* Anchor names get quoted in WordIndex and TitleIndex
* Filtering of filenames in page_list() corrected
* Escape &, <, > when sending the editor
* Final(?) fix for japanese wiki names
-----------------------------------------------------------------------------
Version 0.2 (2000-08-26)
New features:
* When saving, a datestamp saved in the form and that of the file are
compared now; so, accidently saving over changes of other people is
not possible anymore (saving still needs file locking though, for
race conditions)
* if the directory "backup" exists in the data dir, pages are saved
there before a new version is written to disk
* Removed the "Reset" button from EditPage
* Added "Reduce editor size" link
* Added Latin-1 WikiNames (JrgenHermann ;)
* Speeded up RecentChanges by looking up hostnames ONCE while saving
* Show at most 14 (distinct) days in RecentChanges
* Added icons for common functions, at the top of the page
* Added a printing preview (no icons, etc.)
* Added bracketed (external) URLs
* Added support for quoted URLs ("http://...")
* Added styles for :visited links to CSS
* Embed image if an URL ends in .gif/.jpg/.png
* No markup detection in code sections
* Grey background for code sections
* Added handling for numbered lists
* the edit textarea now grows in width with the browser window
(thanks to Sebastian Dau for that idea)
* Added page info (revision history) and viewing of old revisions
* Added page diff, and diff links on page info
* Added InterWiki support (use "wiki:WikiServer/theirlocalname"; the list
of WikiServers is read from "data/intermap.txt")
* Added "normal" InterWiki links
* Added "action=raw" to send the raw wiki markup as text/plain (e.g. for
backup purposes via wget)
Bugfixes:
* Removed an exception when saving empty pages
* Fixed bold nested into emphasis ('''''Bold''' Italic'')
-----------------------------------------------------------------------------
Version 0.1 (2000-07-29)
Improvements over PikiPiki 1.62:
* Moved configuration to "moin_config.py"
* Added "edit_rows" setting
* Added navigation bar
* Improved HTML formatting
* Added timing comment (page created in xx secs)
* ISO date and time formats by default
* Formatted RecentChanges with HTML tables
* Uppercase letters for the index pages
* Added PythonPowered logo
Bugfixes:
* Javadoc comments now get formatted properly in {{{ }}} sections
* Remove \r from submitted pages (so we get PORTABLE wiki files)
* chmod(0666) eases manual changes to the data dir
-----------------------------------------------------------------------------
|