|
582 | 582 | { |
583 | 583 | "data": { |
584 | 584 | "image/jpeg": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAAyADIDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDi6KKK+ZP3EKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA//Z", |
585 | | - "image/png": "iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAAZ0lEQVR4Ae3SsREAIAzEsMD+O8MM7lKI+ouc8Hmz8d2NR804q/wLLVpFoGy1RasIlK22aBWBstUWrSJQttqiVQTKVlu0ikDZaotWEShbbdEqAmWrLVpFoGy1RasIlK22aBWBstVW0fpBqgFjLbA8fgAAAABJRU5ErkJggg==", |
| 585 | + "image/png": "iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAAfUlEQVR4AWL8zzAYAdNgdBTDqLNIAqORSAoYDS1SwGhokQJGQ4sUMBpapIDR0CIFjIYWKWA0tEgBo6FFChgNLVLAaGiRAkZDixQwGlqkgNHQIgWMhhYpYDS0SAGjoUUKGA0tUsBoaJECRkOLFDAaWqSA0dAiBYyGFmCkhBYAQaoBY/NmMJ4AAAAASUVORK5CYII=", |
586 | 586 | "text/plain": [ |
587 | 587 | "<PIL.Image.Image image mode=RGB size=50x50>" |
588 | 588 | ] |
|
621 | 621 | "outputs": [ |
622 | 622 | { |
623 | 623 | "data": { |
624 | | - "image/png": "iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAAS0lEQVR4nO3OsQEAEADAMPz/Mw9YMjE0F2Tu8aP1OnBXS9QStUQtUUvUErVELVFL1BK1RC1RS9QStUQtUUvUErVELVFL1BK1RC1xAEGqAWOFuDKrAAAAAElFTkSuQmCC", |
| 624 | + "image/png": "iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAAZklEQVR4nM3OMQEAMAyAMIZ/z52B/iUK8oYiSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkrwO7D0GqAWPcq78HAAAAAElFTkSuQmCC", |
625 | 625 | "text/plain": [ |
626 | 626 | "<IPython.core.display.Image object>" |
627 | 627 | ] |
|
662 | 662 | "\n", |
663 | 663 | "def detect_mime(data):\n", |
664 | 664 | " \"Get the MIME type for bytes `data`, covering common PDF, audio, video, and image types\"\n", |
| 665 | + " if not isinstance(data,bytes): return None\n", |
665 | 666 | " import mimetypes\n", |
666 | 667 | " from fastcore import imghdr\n", |
667 | 668 | " for (sig,pos),mime in _sigs.items():\n", |
|
672 | 673 | { |
673 | 674 | "cell_type": "code", |
674 | 675 | "execution_count": null, |
675 | | - "id": "95c46f5a", |
| 676 | + "id": "9e314cb9", |
676 | 677 | "metadata": {}, |
677 | 678 | "outputs": [ |
678 | 679 | { |
|
690 | 691 | "detect_mime(ib)" |
691 | 692 | ] |
692 | 693 | }, |
| 694 | + { |
| 695 | + "cell_type": "code", |
| 696 | + "execution_count": null, |
| 697 | + "id": "9ec0b74c", |
| 698 | + "metadata": {}, |
| 699 | + "outputs": [], |
| 700 | + "source": [ |
| 701 | + "test_is(detect_mime('this is a non-byte string'),None)" |
| 702 | + ] |
| 703 | + }, |
693 | 704 | { |
694 | 705 | "cell_type": "code", |
695 | 706 | "execution_count": null, |
|
1029 | 1040 | { |
1030 | 1041 | "data": { |
1031 | 1042 | "text/plain": [ |
1032 | | - "'pip 25.3 from /Users/jhoward/aai-ws/.venv/lib/python3.12/site-packages/pip (python 3.12)'" |
| 1043 | + "'pip 25.3 from /Users/rensdimmendaal/git/.venv/lib/python3.12/site-packages/pip (python 3.12)'" |
1033 | 1044 | ] |
1034 | 1045 | }, |
1035 | 1046 | "execution_count": null, |
|
1607 | 1618 | { |
1608 | 1619 | "data": { |
1609 | 1620 | "text/plain": [ |
1610 | | - "Path('/Users/jhoward/aai-ws/fastcore/fastcore')" |
| 1621 | + "Path('/Users/rensdimmendaal/git/repos/fastcore/fastcore')" |
1611 | 1622 | ] |
1612 | 1623 | }, |
1613 | 1624 | "execution_count": null, |
|
1912 | 1923 | "text/markdown": [ |
1913 | 1924 | "---\n", |
1914 | 1925 | "\n", |
1915 | | - "[source](https://github.com/AnswerDotAI/fastcore/blob/main/fastcore/xtras.py#L499){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
| 1926 | + "[source](https://github.com/AnswerDotAI/fastcore/blob/main/fastcore/xtras.py#L500){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
1916 | 1927 | "\n", |
1917 | 1928 | "#### ReindexCollection\n", |
1918 | 1929 | "\n", |
1919 | 1930 | "```python\n", |
1920 | 1931 | "\n", |
1921 | 1932 | "def ReindexCollection(\n", |
1922 | | - " coll, idxs:NoneType=None, cache:NoneType=None, tfm:function=<function noop>\n", |
| 1933 | + " coll, idxs:NoneType=None, cache:NoneType=None, tfm:function=noop\n", |
1923 | 1934 | "):\n", |
1924 | 1935 | "\n", |
1925 | 1936 | "\n", |
|
1931 | 1942 | "```python\n", |
1932 | 1943 | "\n", |
1933 | 1944 | "def ReindexCollection(\n", |
1934 | | - " coll, idxs:NoneType=None, cache:NoneType=None, tfm:function=<function noop>\n", |
| 1945 | + " coll, idxs:NoneType=None, cache:NoneType=None, tfm:function=noop\n", |
1935 | 1946 | "):\n", |
1936 | 1947 | "\n", |
1937 | 1948 | "\n", |
|
2008 | 2019 | "text/markdown": [ |
2009 | 2020 | "---\n", |
2010 | 2021 | "\n", |
2011 | | - "[source](https://github.com/AnswerDotAI/fastcore/blob/main/fastcore/xtras.py#L510){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
| 2022 | + "[source](https://github.com/AnswerDotAI/fastcore/blob/main/fastcore/xtras.py#L511){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
2012 | 2023 | "\n", |
2013 | 2024 | "###### ReindexCollection.reindex\n", |
2014 | 2025 | "\n", |
|
2121 | 2132 | "text/markdown": [ |
2122 | 2133 | "---\n", |
2123 | 2134 | "\n", |
2124 | | - "[source](https://github.com/AnswerDotAI/fastcore/blob/main/fastcore/xtras.py#L514){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
| 2135 | + "[source](https://github.com/AnswerDotAI/fastcore/blob/main/fastcore/xtras.py#L515){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
2125 | 2136 | "\n", |
2126 | 2137 | "##### ReindexCollection.cache_clear\n", |
2127 | 2138 | "\n", |
|
2196 | 2207 | "text/markdown": [ |
2197 | 2208 | "---\n", |
2198 | 2209 | "\n", |
2199 | | - "[source](https://github.com/AnswerDotAI/fastcore/blob/main/fastcore/xtras.py#L511){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
| 2210 | + "[source](https://github.com/AnswerDotAI/fastcore/blob/main/fastcore/xtras.py#L512){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
2200 | 2211 | "\n", |
2201 | 2212 | "##### ReindexCollection.shuffle\n", |
2202 | 2213 | "\n", |
|
2250 | 2261 | { |
2251 | 2262 | "data": { |
2252 | 2263 | "text/plain": [ |
2253 | | - "['b', 'a', 'g', 'h', 'd', 'e', 'c', 'f']" |
| 2264 | + "['a', 'g', 'h', 'c', 'd', 'b', 'f', 'e']" |
2254 | 2265 | ] |
2255 | 2266 | }, |
2256 | 2267 | "execution_count": null, |
|
2646 | 2657 | { |
2647 | 2658 | "data": { |
2648 | 2659 | "text/plain": [ |
2649 | | - "'_7WDcaL3JT7qV037u3Werzw'" |
| 2660 | + "'_xNpj56ekTqyk9MsVDYRnnA'" |
2650 | 2661 | ] |
2651 | 2662 | }, |
2652 | 2663 | "execution_count": null, |
|
2741 | 2752 | { |
2742 | 2753 | "data": { |
2743 | 2754 | "text/plain": [ |
2744 | | - "('408ea190', '8c7d7247')" |
| 2755 | + "('0100dd53', '8c7d7247')" |
2745 | 2756 | ] |
2746 | 2757 | }, |
2747 | 2758 | "execution_count": null, |
|
3438 | 3449 | "text/markdown": [ |
3439 | 3450 | "---\n", |
3440 | 3451 | "\n", |
3441 | | - "[source](https://github.com/AnswerDotAI/fastcore/blob/main/fastcore/xtras.py#L712){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
| 3452 | + "[source](https://github.com/AnswerDotAI/fastcore/blob/main/fastcore/xtras.py#L713){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
3442 | 3453 | "\n", |
3443 | 3454 | "#### EventTimer\n", |
3444 | 3455 | "\n", |
|
3493 | 3504 | "name": "stdout", |
3494 | 3505 | "output_type": "stream", |
3495 | 3506 | "text": [ |
3496 | | - "Num Events: 1, Freq/sec: 73.6\n", |
3497 | | - "Most recent: ▁▁▂▅▇ 33.0 26.9 54.1 89.8 120.6\n" |
| 3507 | + "Num Events: 9, Freq/sec: 346.2\n", |
| 3508 | + "Most recent: ▅▃▇▁▇ 263.7 256.6 278.3 235.1 276.9\n" |
3498 | 3509 | ] |
3499 | 3510 | } |
3500 | 3511 | ], |
|
3578 | 3589 | "text/markdown": [ |
3579 | 3590 | "---\n", |
3580 | 3591 | "\n", |
3581 | | - "[source](https://github.com/AnswerDotAI/fastcore/blob/main/fastcore/xtras.py#L744){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
| 3592 | + "[source](https://github.com/AnswerDotAI/fastcore/blob/main/fastcore/xtras.py#L745){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
3582 | 3593 | "\n", |
3583 | 3594 | "#### PartialFormatter\n", |
3584 | 3595 | "\n", |
|
3722 | 3733 | "name": "stdout", |
3723 | 3734 | "output_type": "stream", |
3724 | 3735 | "text": [ |
3725 | | - "2000-01-01 12:00:00 UTC is 2000-01-01 22:00:00+10:00 local time\n" |
| 3736 | + "2000-01-01 12:00:00 UTC is 2000-01-01 13:00:00+01:00 local time\n" |
3726 | 3737 | ] |
3727 | 3738 | } |
3728 | 3739 | ], |
|
3754 | 3765 | "name": "stdout", |
3755 | 3766 | "output_type": "stream", |
3756 | 3767 | "text": [ |
3757 | | - "2000-01-01 12:00:00 local is 2000-01-01 02:00:00+00:00 UTC time\n" |
| 3768 | + "2000-01-01 12:00:00 local is 2000-01-01 11:00:00+00:00 UTC time\n" |
3758 | 3769 | ] |
3759 | 3770 | } |
3760 | 3771 | ], |
|
3863 | 3874 | "text/markdown": [ |
3864 | 3875 | "---\n", |
3865 | 3876 | "\n", |
3866 | | - "[source](https://github.com/AnswerDotAI/fastcore/blob/main/fastcore/xtras.py#L807){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
| 3877 | + "[source](https://github.com/AnswerDotAI/fastcore/blob/main/fastcore/xtras.py#L808){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
3867 | 3878 | "\n", |
3868 | 3879 | "#### ContextManagers\n", |
3869 | 3880 | "\n", |
|
0 commit comments