Offset 1, 5 lines modified | Offset 1, 5 lines modified | ||
1 | ·3 | 1 | ·739570e234d53bb198d30e333edf17f5·3720044·doc·optional·python-sqlalchemy-doc_1.4.50+ds1-1_all.deb |
2 | ·5644a5f4007e027d67a7e9c2152c87e8·70312·debug·optional·python3-sqlalchemy-ext-dbgsym_1.4.50+ds1-1_amd64.deb | 2 | ·5644a5f4007e027d67a7e9c2152c87e8·70312·debug·optional·python3-sqlalchemy-ext-dbgsym_1.4.50+ds1-1_amd64.deb |
3 | ·43fb1fe4a0a459ee6c85e9a9d5ed8dcc·20916·python·optional·python3-sqlalchemy-ext_1.4.50+ds1-1_amd64.deb | 3 | ·43fb1fe4a0a459ee6c85e9a9d5ed8dcc·20916·python·optional·python3-sqlalchemy-ext_1.4.50+ds1-1_amd64.deb |
4 | ·7b9b7746123a45060be2c12bd6e80ed4·1009400·python·optional·python3-sqlalchemy_1.4.50+ds1-1_all.deb | 4 | ·7b9b7746123a45060be2c12bd6e80ed4·1009400·python·optional·python3-sqlalchemy_1.4.50+ds1-1_all.deb |
Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
1 | -rw-r--r--···0········0········0········4·2024-01-05·13:47:47.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2024-01-05·13:47:47.000000·debian-binary |
2 | -rw-r--r--···0········0········0····133 | 2 | -rw-r--r--···0········0········0····13368·2024-01-05·13:47:47.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0··37064 | 3 | -rw-r--r--···0········0········0··3706484·2024-01-05·13:47:47.000000·data.tar.xz |
Offset 590, 15 lines modified | Offset 590, 15 lines modified | ||
590 | <section·id="changelog"> | 590 | <section·id="changelog"> |
591 | <h1>1.0·Changelog<a·class="headerlink"·href="#changelog"·title="Link·to·this·heading">¶</a></h1> | 591 | <h1>1.0·Changelog<a·class="headerlink"·href="#changelog"·title="Link·to·this·heading">¶</a></h1> |
592 | <section·id="change-1.0.19"> | 592 | <section·id="change-1.0.19"> |
593 | <h2·class="release-version">1.0.19<a·class="headerlink"·href="#change-1.0.19"·title="Link·to·this·heading">¶</a></h2> | 593 | <h2·class="release-version">1.0.19<a·class="headerlink"·href="#change-1.0.19"·title="Link·to·this·heading">¶</a></h2> |
594 | Released:·August·3,·2017<section·id="change-1.0.19-oracle"> | 594 | Released:·August·3,·2017<section·id="change-1.0.19-oracle"> |
595 | <h3>oracle<a·class="headerlink"·href="#change-1.0.19-oracle"·title="Link·to·this·heading">¶</a></h3> | 595 | <h3>oracle<a·class="headerlink"·href="#change-1.0.19-oracle"·title="Link·to·this·heading">¶</a></h3> |
596 | <ul·class="simple"> | 596 | <ul·class="simple"> |
597 | <li><p·class="caption"·id="change-1.0.19-0"><span·class="target"·id="change-ec8fd72ca0ab2d0123169536543fb6cd"><strong>[oracle]·[ | 597 | <li><p·class="caption"·id="change-1.0.19-0"><span·class="target"·id="change-ec8fd72ca0ab2d0123169536543fb6cd"><strong>[oracle]·[performance]·[bug]·[py2k]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-ec8fd72ca0ab2d0123169536543fb6cd">¶</a></span><p>Fixed·performance·regression·caused·by·the·fix·for·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/3937">#3937</a>·where |
598 | cx_Oracle·as·of·version·5.3·dropped·the·<code·class="docutils·literal·notranslate"><span·class="pre">.UNICODE</span></code>·symbol·from·its | 598 | cx_Oracle·as·of·version·5.3·dropped·the·<code·class="docutils·literal·notranslate"><span·class="pre">.UNICODE</span></code>·symbol·from·its |
599 | namespace,··which·was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being | 599 | namespace,··which·was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being |
600 | turned·on·unconditionally,·which·invokes·functions·on·the·SQLAlchemy | 600 | turned·on·unconditionally,·which·invokes·functions·on·the·SQLAlchemy |
601 | side·which·convert·all·strings·to·unicode·unconditionally·and·causing | 601 | side·which·convert·all·strings·to·unicode·unconditionally·and·causing |
602 | a·performance·impact.··In·fact,·per·cx_Oracle’s·author·the | 602 | a·performance·impact.··In·fact,·per·cx_Oracle’s·author·the |
603 | “WITH_UNICODE”·mode·has·been·removed·entirely·as·of·5.1,·so·the·expensive·unicode | 603 | “WITH_UNICODE”·mode·has·been·removed·entirely·as·of·5.1,·so·the·expensive·unicode |
604 | conversion·functions·are·no·longer·necessary·and·are·disabled·if | 604 | conversion·functions·are·no·longer·necessary·and·are·disabled·if |
Offset 316, 15 lines modified | Offset 316, 15 lines modified | ||
316 | ······················#·_\x8o_\x8r_\x8a_\x8c_\x8l_\x8e | 316 | ······················#·_\x8o_\x8r_\x8a_\x8c_\x8l_\x8e |
317 | ······················#·_\x8t_\x8e_\x8s_\x8t_\x8s | 317 | ······················#·_\x8t_\x8e_\x8s_\x8t_\x8s |
318 | ······················#·_\x8m_\x8i_\x8s_\x8c | 318 | ······················#·_\x8m_\x8i_\x8s_\x8c |
319 | *\x8**\x8**\x8**\x8**\x8**\x8*·1\x81.\x8.0\x80·C\x8Ch\x8ha\x8an\x8ng\x8ge\x8el\x8lo\x8og\x8g_\x8?\x8¶·*\x8**\x8**\x8**\x8**\x8**\x8* | 319 | *\x8**\x8**\x8**\x8**\x8**\x8*·1\x81.\x8.0\x80·C\x8Ch\x8ha\x8an\x8ng\x8ge\x8el\x8lo\x8og\x8g_\x8?\x8¶·*\x8**\x8**\x8**\x8**\x8**\x8* |
320 | *\x8**\x8**\x8**\x8**\x8*·1\x81.\x8.0\x80.\x8.1\x819\x89_\x8?\x8¶·*\x8**\x8**\x8**\x8**\x8* | 320 | *\x8**\x8**\x8**\x8**\x8*·1\x81.\x8.0\x80.\x8.1\x819\x89_\x8?\x8¶·*\x8**\x8**\x8**\x8**\x8* |
321 | Released:·August·3,·2017 | 321 | Released:·August·3,·2017 |
322 | *\x8**\x8**\x8**\x8*·o\x8or\x8ra\x8ac\x8cl\x8le\x8e_\x8?\x8¶·*\x8**\x8**\x8**\x8* | 322 | *\x8**\x8**\x8**\x8*·o\x8or\x8ra\x8ac\x8cl\x8le\x8e_\x8?\x8¶·*\x8**\x8**\x8**\x8* |
323 | ····*·[\x8[o\x8or\x8ra\x8ac\x8cl\x8le\x8e]\x8]·[\x8[ | 323 | ····*·[\x8[o\x8or\x8ra\x8ac\x8cl\x8le\x8e]\x8]·[\x8[p.pe.er.rf.fo.or.rm.ma.an.nc.ce.e].]·[.[b.bu.ug.g]\x8]·[\x8[p\x8py\x8y2\x82k\x8k]\x8]·_\x8¶ |
324 | ······Fixed·performance·regression·caused·by·the·fix·for·_\x8#_\x83_\x89_\x83_\x87·where·cx_Oracle | 324 | ······Fixed·performance·regression·caused·by·the·fix·for·_\x8#_\x83_\x89_\x83_\x87·where·cx_Oracle |
325 | ······as·of·version·5.3·dropped·the·.UNICODE·symbol·from·its·namespace,·which | 325 | ······as·of·version·5.3·dropped·the·.UNICODE·symbol·from·its·namespace,·which |
326 | ······was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being·turned·on | 326 | ······was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being·turned·on |
327 | ······unconditionally,·which·invokes·functions·on·the·SQLAlchemy·side·which | 327 | ······unconditionally,·which·invokes·functions·on·the·SQLAlchemy·side·which |
328 | ······convert·all·strings·to·unicode·unconditionally·and·causing·a·performance | 328 | ······convert·all·strings·to·unicode·unconditionally·and·causing·a·performance |
329 | ······impact.·In·fact,·per·cx_Oracle’s·author·the·“WITH_UNICODE”·mode·has·been | 329 | ······impact.·In·fact,·per·cx_Oracle’s·author·the·“WITH_UNICODE”·mode·has·been |
330 | ······removed·entirely·as·of·5.1,·so·the·expensive·unicode·conversion·functions | 330 | ······removed·entirely·as·of·5.1,·so·the·expensive·unicode·conversion·functions |
Offset 875, 15 lines modified | Offset 875, 15 lines modified | ||
875 | </section> | 875 | </section> |
876 | </section> | 876 | </section> |
877 | <section·id="change-1.1.13"> | 877 | <section·id="change-1.1.13"> |
878 | <h2·class="release-version">1.1.13<a·class="headerlink"·href="#change-1.1.13"·title="Link·to·this·heading">¶</a></h2> | 878 | <h2·class="release-version">1.1.13<a·class="headerlink"·href="#change-1.1.13"·title="Link·to·this·heading">¶</a></h2> |
879 | Released:·August·3,·2017<section·id="change-1.1.13-oracle"> | 879 | Released:·August·3,·2017<section·id="change-1.1.13-oracle"> |
880 | <h3>oracle<a·class="headerlink"·href="#change-1.1.13-oracle"·title="Link·to·this·heading">¶</a></h3> | 880 | <h3>oracle<a·class="headerlink"·href="#change-1.1.13-oracle"·title="Link·to·this·heading">¶</a></h3> |
881 | <ul·class="simple"> | 881 | <ul·class="simple"> |
882 | <li><p·class="caption"·id="change-1.1.13-0"><span·class="target"·id="change-91e9180bc7f72ab73ee81944ee6c0b5b"><strong>[oracle]·[ | 882 | <li><p·class="caption"·id="change-1.1.13-0"><span·class="target"·id="change-91e9180bc7f72ab73ee81944ee6c0b5b"><strong>[oracle]·[performance]·[bug]·[py2k]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-91e9180bc7f72ab73ee81944ee6c0b5b">¶</a></span><p>Fixed·performance·regression·caused·by·the·fix·for·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/3937">#3937</a>·where |
883 | cx_Oracle·as·of·version·5.3·dropped·the·<code·class="docutils·literal·notranslate"><span·class="pre">.UNICODE</span></code>·symbol·from·its | 883 | cx_Oracle·as·of·version·5.3·dropped·the·<code·class="docutils·literal·notranslate"><span·class="pre">.UNICODE</span></code>·symbol·from·its |
884 | namespace,··which·was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being | 884 | namespace,··which·was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being |
885 | turned·on·unconditionally,·which·invokes·functions·on·the·SQLAlchemy | 885 | turned·on·unconditionally,·which·invokes·functions·on·the·SQLAlchemy |
886 | side·which·convert·all·strings·to·unicode·unconditionally·and·causing | 886 | side·which·convert·all·strings·to·unicode·unconditionally·and·causing |
887 | a·performance·impact.··In·fact,·per·cx_Oracle’s·author·the | 887 | a·performance·impact.··In·fact,·per·cx_Oracle’s·author·the |
888 | “WITH_UNICODE”·mode·has·been·removed·entirely·as·of·5.1,·so·the·expensive·unicode | 888 | “WITH_UNICODE”·mode·has·been·removed·entirely·as·of·5.1,·so·the·expensive·unicode |
889 | conversion·functions·are·no·longer·necessary·and·are·disabled·if | 889 | conversion·functions·are·no·longer·necessary·and·are·disabled·if |
Offset 495, 15 lines modified | Offset 495, 15 lines modified | ||
495 | ······the·same·PRECEDING·or·FOLLOWING·keywords·in·a·range·by·allowing·for·the | 495 | ······the·same·PRECEDING·or·FOLLOWING·keywords·in·a·range·by·allowing·for·the |
496 | ······left·side·of·the·range·to·be·positive·and·for·the·right·to·be·negative, | 496 | ······left·side·of·the·range·to·be·positive·and·for·the·right·to·be·negative, |
497 | ······e.g.·(1,·3)·is·“1·FOLLOWING·AND·3·FOLLOWING”. | 497 | ······e.g.·(1,·3)·is·“1·FOLLOWING·AND·3·FOLLOWING”. |
498 | ······References:·_\x8#_\x84_\x80_\x85_\x83 | 498 | ······References:·_\x8#_\x84_\x80_\x85_\x83 |
499 | *\x8**\x8**\x8**\x8**\x8*·1\x81.\x8.1\x81.\x8.1\x813\x83_\x8?\x8¶·*\x8**\x8**\x8**\x8**\x8* | 499 | *\x8**\x8**\x8**\x8**\x8*·1\x81.\x8.1\x81.\x8.1\x813\x83_\x8?\x8¶·*\x8**\x8**\x8**\x8**\x8* |
500 | Released:·August·3,·2017 | 500 | Released:·August·3,·2017 |
501 | *\x8**\x8**\x8**\x8*·o\x8or\x8ra\x8ac\x8cl\x8le\x8e_\x8?\x8¶·*\x8**\x8**\x8**\x8* | 501 | *\x8**\x8**\x8**\x8*·o\x8or\x8ra\x8ac\x8cl\x8le\x8e_\x8?\x8¶·*\x8**\x8**\x8**\x8* |
502 | ····*·[\x8[o\x8or\x8ra\x8ac\x8cl\x8le\x8e]\x8]·[\x8[ | 502 | ····*·[\x8[o\x8or\x8ra\x8ac\x8cl\x8le\x8e]\x8]·[\x8[p.pe.er.rf.fo.or.rm.ma.an.nc.ce.e].]·[.[b.bu.ug.g]\x8]·[\x8[p\x8py\x8y2\x82k\x8k]\x8]·_\x8¶ |
503 | ······Fixed·performance·regression·caused·by·the·fix·for·_\x8#_\x83_\x89_\x83_\x87·where·cx_Oracle | 503 | ······Fixed·performance·regression·caused·by·the·fix·for·_\x8#_\x83_\x89_\x83_\x87·where·cx_Oracle |
504 | ······as·of·version·5.3·dropped·the·.UNICODE·symbol·from·its·namespace,·which | 504 | ······as·of·version·5.3·dropped·the·.UNICODE·symbol·from·its·namespace,·which |
505 | ······was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being·turned·on | 505 | ······was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being·turned·on |
506 | ······unconditionally,·which·invokes·functions·on·the·SQLAlchemy·side·which | 506 | ······unconditionally,·which·invokes·functions·on·the·SQLAlchemy·side·which |
507 | ······convert·all·strings·to·unicode·unconditionally·and·causing·a·performance | 507 | ······convert·all·strings·to·unicode·unconditionally·and·causing·a·performance |
508 | ······impact.·In·fact,·per·cx_Oracle’s·author·the·“WITH_UNICODE”·mode·has·been | 508 | ······impact.·In·fact,·per·cx_Oracle’s·author·the·“WITH_UNICODE”·mode·has·been |
509 | ······removed·entirely·as·of·5.1,·so·the·expensive·unicode·conversion·functions | 509 | ······removed·entirely·as·of·5.1,·so·the·expensive·unicode·conversion·functions |
Offset 2979, 15 lines modified | Offset 2979, 15 lines modified | ||
2979 | </p> | 2979 | </p> |
2980 | </li> | 2980 | </li> |
2981 | </ul> | 2981 | </ul> |
2982 | </section> | 2982 | </section> |
2983 | <section·id="change-1.2.0b3-oracle"> | 2983 | <section·id="change-1.2.0b3-oracle"> |
2984 | <h3>oracle<a·class="headerlink"·href="#change-1.2.0b3-oracle"·title="Link·to·this·heading">¶</a></h3> | 2984 | <h3>oracle<a·class="headerlink"·href="#change-1.2.0b3-oracle"·title="Link·to·this·heading">¶</a></h3> |
2985 | <ul·class="simple"> | 2985 | <ul·class="simple"> |
2986 | <li><p·class="caption"·id="change-1.2.0b3-43"><span·class="target"·id="change-7cb9a3370310381d19eb1a17c5a84a91"><strong>[oracle]·[ | 2986 | <li><p·class="caption"·id="change-1.2.0b3-43"><span·class="target"·id="change-7cb9a3370310381d19eb1a17c5a84a91"><strong>[oracle]·[performance]·[bug]·[py2k]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-7cb9a3370310381d19eb1a17c5a84a91">¶</a></span><p>Fixed·performance·regression·caused·by·the·fix·for·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/3937">#3937</a>·where |
2987 | cx_Oracle·as·of·version·5.3·dropped·the·<code·class="docutils·literal·notranslate"><span·class="pre">.UNICODE</span></code>·symbol·from·its | 2987 | cx_Oracle·as·of·version·5.3·dropped·the·<code·class="docutils·literal·notranslate"><span·class="pre">.UNICODE</span></code>·symbol·from·its |
2988 | namespace,··which·was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being | 2988 | namespace,··which·was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being |
2989 | turned·on·unconditionally,·which·invokes·functions·on·the·SQLAlchemy | 2989 | turned·on·unconditionally,·which·invokes·functions·on·the·SQLAlchemy |
2990 | side·which·convert·all·strings·to·unicode·unconditionally·and·causing | 2990 | side·which·convert·all·strings·to·unicode·unconditionally·and·causing |
2991 | a·performance·impact.··In·fact,·per·cx_Oracle’s·author·the | 2991 | a·performance·impact.··In·fact,·per·cx_Oracle’s·author·the |
2992 | “WITH_UNICODE”·mode·has·been·removed·entirely·as·of·5.1,·so·the·expensive·unicode | 2992 | “WITH_UNICODE”·mode·has·been·removed·entirely·as·of·5.1,·so·the·expensive·unicode |
2993 | conversion·functions·are·no·longer·necessary·and·are·disabled·if | 2993 | conversion·functions·are·no·longer·necessary·and·are·disabled·if |
Offset 1878, 15 lines modified | Offset 1878, 15 lines modified | ||
1878 | verify·the·number·of·rows·affected·on·a·target·version. | 1878 | verify·the·number·of·rows·affected·on·a·target·version. |
1879 | [\x8[m\x8ms\x8ss\x8sq\x8ql\x8l]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8¶ | 1879 | [\x8[m\x8ms\x8ss\x8sq\x8ql\x8l]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8¶ |
1880 | Added·a·rule·to·SQL·Server·index·reflection·to·ignore·the·so-called·“heap” | 1880 | Added·a·rule·to·SQL·Server·index·reflection·to·ignore·the·so-called·“heap” |
1881 | index·that·is·implicitly·present·on·a·table·that·does·not·specify·a·clustered | 1881 | index·that·is·implicitly·present·on·a·table·that·does·not·specify·a·clustered |
1882 | index. | 1882 | index. |
1883 | References:·_\x8#_\x84_\x80_\x85_\x89 | 1883 | References:·_\x8#_\x84_\x80_\x85_\x89 |
1884 | *\x8**\x8**\x8**\x8*·o\x8or\x8ra\x8ac\x8cl\x8le\x8e_\x8?\x8¶·*\x8**\x8**\x8**\x8* | 1884 | *\x8**\x8**\x8**\x8*·o\x8or\x8ra\x8ac\x8cl\x8le\x8e_\x8?\x8¶·*\x8**\x8**\x8**\x8* |
1885 | ····*·[\x8[o\x8or\x8ra\x8ac\x8cl\x8le\x8e]\x8]·[\x8[ | 1885 | ····*·[\x8[o\x8or\x8ra\x8ac\x8cl\x8le\x8e]\x8]·[\x8[p.pe.er.rf.fo.or.rm.ma.an.nc.ce.e].]·[.[b.bu.ug.g]\x8]·[\x8[p\x8py\x8y2\x82k\x8k]\x8]·_\x8¶ |
1886 | ······Fixed·performance·regression·caused·by·the·fix·for·_\x8#_\x83_\x89_\x83_\x87·where·cx_Oracle | 1886 | ······Fixed·performance·regression·caused·by·the·fix·for·_\x8#_\x83_\x89_\x83_\x87·where·cx_Oracle |
1887 | ······as·of·version·5.3·dropped·the·.UNICODE·symbol·from·its·namespace,·which | 1887 | ······as·of·version·5.3·dropped·the·.UNICODE·symbol·from·its·namespace,·which |
1888 | ······was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being·turned·on | 1888 | ······was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being·turned·on |
1889 | ······unconditionally,·which·invokes·functions·on·the·SQLAlchemy·side·which | 1889 | ······unconditionally,·which·invokes·functions·on·the·SQLAlchemy·side·which |
1890 | ······convert·all·strings·to·unicode·unconditionally·and·causing·a·performance | 1890 | ······convert·all·strings·to·unicode·unconditionally·and·causing·a·performance |
1891 | ······impact.·In·fact,·per·cx_Oracle’s·author·the·“WITH_UNICODE”·mode·has·been | 1891 | ······impact.·In·fact,·per·cx_Oracle’s·author·the·“WITH_UNICODE”·mode·has·been |
1892 | ······removed·entirely·as·of·5.1,·so·the·expensive·unicode·conversion·functions | 1892 | ······removed·entirely·as·of·5.1,·so·the·expensive·unicode·conversion·functions |
Offset 1803, 30 lines modified | Offset 1803, 30 lines modified | ||
1803 | </p> | 1803 | </p> |
1804 | </li> | 1804 | </li> |
1805 | </ul> | 1805 | </ul> |
1806 | </section> | 1806 | </section> |
1807 | <section·id="change-1.3.17-oracle"> | 1807 | <section·id="change-1.3.17-oracle"> |
1808 | <h3>oracle<a·class="headerlink"·href="#change-1.3.17-oracle"·title="Link·to·this·heading">¶</a></h3> | 1808 | <h3>oracle<a·class="headerlink"·href="#change-1.3.17-oracle"·title="Link·to·this·heading">¶</a></h3> |
1809 | <ul·class="simple"> | 1809 | <ul·class="simple"> |
1810 | <li><p·class="caption"·id="change-1.3.17-14"><span·class="target"·id="change-aae71399cbb61c78ebaa99fe5ebbc85f"><strong>[oracle]·[bug]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-aae71399cbb61c78ebaa99fe5ebbc85f">¶</a></span><p>Some·modifications·to·how·the·cx_oracle·dialect·sets·up·per-column | ||
1811 | outputtype·handlers·for·LOB·and·numeric·datatypes·to·adjust·for·potential | ||
1812 | changes·coming·in·cx_Oracle·8.</p> | ||
1813 | <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/5246">#5246</a></p> | ||
1814 | </p> | ||
1815 | </li> | ||
1816 | <li><p·class="caption"·id="change-1.3.17-1 | 1810 | <li><p·class="caption"·id="change-1.3.17-14"><span·class="target"·id="change-cc5a1743d1951d72594d609e6e1a5c99"><strong>[oracle]·[performance]·[bug]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-cc5a1743d1951d72594d609e6e1a5c99">¶</a></span><p>Changed·the·implementation·of·fetching·CLOB·and·BLOB·objects·to·use |
1817 | cx_Oracle’s·native·implementation·which·fetches·CLOB/BLOB·objects·inline | 1811 | cx_Oracle’s·native·implementation·which·fetches·CLOB/BLOB·objects·inline |
1818 | with·other·result·columns,·rather·than·performing·a·separate·fetch.·As | 1812 | with·other·result·columns,·rather·than·performing·a·separate·fetch.·As |
1819 | always,·this·can·be·disabled·by·setting·auto_convert_lobs·to·False.</p> | 1813 | always,·this·can·be·disabled·by·setting·auto_convert_lobs·to·False.</p> |
1820 | <p>As·part·of·this·change,·the·behavior·of·a·CLOB·that·was·given·a·blank | 1814 | <p>As·part·of·this·change,·the·behavior·of·a·CLOB·that·was·given·a·blank |
1821 | string·on·INSERT·now·returns·None·on·SELECT,·which·is·now·consistent·with | 1815 | string·on·INSERT·now·returns·None·on·SELECT,·which·is·now·consistent·with |
1822 | that·of·VARCHAR·on·Oracle.</p> | 1816 | that·of·VARCHAR·on·Oracle.</p> |
1823 | <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/5314">#5314</a></p> | 1817 | <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/5314">#5314</a></p> |
1824 | </p> | 1818 | </p> |
1825 | </li> | 1819 | </li> |
1820 | <li><p·class="caption"·id="change-1.3.17-15"><span·class="target"·id="change-aae71399cbb61c78ebaa99fe5ebbc85f"><strong>[oracle]·[bug]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-aae71399cbb61c78ebaa99fe5ebbc85f">¶</a></span><p>Some·modifications·to·how·the·cx_oracle·dialect·sets·up·per-column | ||
1821 | outputtype·handlers·for·LOB·and·numeric·datatypes·to·adjust·for·potential | ||
1822 | changes·coming·in·cx_Oracle·8.</p> | ||
1823 | <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/5246">#5246</a></p> | ||
1824 | </p> | ||
1825 | </li> | ||
1826 | </ul> | 1826 | </ul> |
1827 | </section> | 1827 | </section> |
1828 | <section·id="change-1.3.17-firebird"> | 1828 | <section·id="change-1.3.17-firebird"> |
1829 | <h3>firebird<a·class="headerlink"·href="#change-1.3.17-firebird"·title="Link·to·this·heading">¶</a></h3> | 1829 | <h3>firebird<a·class="headerlink"·href="#change-1.3.17-firebird"·title="Link·to·this·heading">¶</a></h3> |
1830 | <ul·class="simple"> | 1830 | <ul·class="simple"> |
1831 | <li><p·class="caption"·id="change-1.3.17-16"><span·class="target"·id="change-3d26d8810b452ce62aee1841b6a4725d"><strong>[firebird]·[change]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-3d26d8810b452ce62aee1841b6a4725d">¶</a></span><p>Adjusted·dialect·loading·for·<code·class="docutils·literal·notranslate"><span·class="pre">firebird://</span></code>·URIs·so·the·external | 1831 | <li><p·class="caption"·id="change-1.3.17-16"><span·class="target"·id="change-3d26d8810b452ce62aee1841b6a4725d"><strong>[firebird]·[change]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-3d26d8810b452ce62aee1841b6a4725d">¶</a></span><p>Adjusted·dialect·loading·for·<code·class="docutils·literal·notranslate"><span·class="pre">firebird://</span></code>·URIs·so·the·external |
1832 | sqlalchemy-firebird·dialect·will·be·used·if·it·has·been·installed, | 1832 | sqlalchemy-firebird·dialect·will·be·used·if·it·has·been·installed, |
Offset 1144, 28 lines modified | Offset 1144, 28 lines modified | ||
1144 | ······References:·_\x8#_\x85_\x82_\x85_\x85 | 1144 | ······References:·_\x8#_\x85_\x82_\x85_\x85 |
1145 | [\x8[m\x8ms\x8ss\x8sq\x8ql\x8l]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·[\x8[r\x8re\x8ef\x8fl\x8le\x8ec\x8ct\x8ti\x8io\x8on\x8n]\x8]·_\x8¶ | 1145 | [\x8[m\x8ms\x8ss\x8sq\x8ql\x8l]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·[\x8[r\x8re\x8ef\x8fl\x8le\x8ec\x8ct\x8ti\x8io\x8on\x8n]\x8]·_\x8¶ |
1146 | Fix·a·regression·introduced·by·the·reflection·of·computed·column·in·MSSQL·when | 1146 | Fix·a·regression·introduced·by·the·reflection·of·computed·column·in·MSSQL·when |
1147 | using·SQL·server·versions·before·2012,·which·does·not·support·the·concat | 1147 | using·SQL·server·versions·before·2012,·which·does·not·support·the·concat |
1148 | function. | 1148 | function. |
1149 | References:·_\x8#_\x85_\x82_\x87_\x81 | 1149 | References:·_\x8#_\x85_\x82_\x87_\x81 |
1150 | *\x8**\x8**\x8**\x8*·o\x8or\x8ra\x8ac\x8cl\x8le\x8e_\x8?\x8¶·*\x8**\x8**\x8**\x8* | 1150 | *\x8**\x8**\x8**\x8*·o\x8or\x8ra\x8ac\x8cl\x8le\x8e_\x8?\x8¶·*\x8**\x8**\x8**\x8* |
1151 | ····*·[\x8[o\x8or\x8ra\x8ac\x8cl\x8le\x8e]\x8]·[\x8[p\x8pe\x8er\x8rf\x8fo\x8or\x8rm\x8ma\x8an\x8nc\x8ce\x8e]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8¶ | ||
1152 | ······Changed·the·implementation·of·fetching·CLOB·and·BLOB·objects·to·use | ||
1153 | ······cx_Oracle’s·native·implementation·which·fetches·CLOB/BLOB·objects·inline | ||
1154 | ······with·other·result·columns,·rather·than·performing·a·separate·fetch.·As | ||
1155 | ······always,·this·can·be·disabled·by·setting·auto_convert_lobs·to·False. | ||
1156 | ······As·part·of·this·change,·the·behavior·of·a·CLOB·that·was·given·a·blank | ||
1157 | ······string·on·INSERT·now·returns·None·on·SELECT,·which·is·now·consistent·with | ||
1158 | ······that·of·VARCHAR·on·Oracle. | ||
1159 | ······References:·_\x8#_\x85_\x83_\x81_\x84 | ||
1151 | 1160 | [\x8[o\x8or\x8ra\x8ac\x8cl\x8le\x8e]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8¶ | |
1152 | 1161 | Some·modifications·to·how·the·cx_oracle·dialect·sets·up·per-column·outputtype | |
1153 | 1162 | handlers·for·LOB·and·numeric·datatypes·to·adjust·for·potential·changes·coming | |
1154 | 1163 | in·cx_Oracle·8. | |
1155 | 1164 | References:·_\x8#_\x85_\x82_\x84_\x86 | |
1156 | [\x8[o\x8or\x8ra\x8ac\x8cl\x8le\x8e]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·[\x8[p\x8pe\x8er\x8rf\x8fo\x8or\x8rm\x8ma\x8an\x8nc\x8ce\x8e]\x8]·_\x8¶ | ||
1157 | Changed·the·implementation·of·fetching·CLOB·and·BLOB·objects·to·use·cx_Oracle’s | ||
1158 | native·implementation·which·fetches·CLOB/BLOB·objects·inline·with·other·result | ||
1159 | columns,·rather·than·performing·a·separate·fetch.·As·always,·this·can·be | ||
1160 | disabled·by·setting·auto_convert_lobs·to·False. | ||
1161 | As·part·of·this·change,·the·behavior·of·a·CLOB·that·was·given·a·blank·string·on | ||
1162 | INSERT·now·returns·None·on·SELECT,·which·is·now·consistent·with·that·of·VARCHAR | ||
1163 | on·Oracle. | ||
1164 | References:·_\x8#_\x85_\x83_\x81_\x84 | ||
1165 | *\x8**\x8**\x8**\x8*·f\x8fi\x8ir\x8re\x8eb\x8bi\x8ir\x8rd\x8d_\x8?\x8¶·*\x8**\x8**\x8**\x8* | 1165 | *\x8**\x8**\x8**\x8*·f\x8fi\x8ir\x8re\x8eb\x8bi\x8ir\x8rd\x8d_\x8?\x8¶·*\x8**\x8**\x8**\x8* |
1166 | ····*·[\x8[f\x8fi\x8ir\x8re\x8eb\x8bi\x8ir\x8rd\x8d]\x8]·[\x8[c\x8ch\x8ha\x8an\x8ng\x8ge\x8e]\x8]·_\x8¶ | 1166 | ····*·[\x8[f\x8fi\x8ir\x8re\x8eb\x8bi\x8ir\x8rd\x8d]\x8]·[\x8[c\x8ch\x8ha\x8an\x8ng\x8ge\x8e]\x8]·_\x8¶ |
1167 | ······Adjusted·dialect·loading·for·firebird://·URIs·so·the·external·sqlalchemy- | 1167 | ······Adjusted·dialect·loading·for·firebird://·URIs·so·the·external·sqlalchemy- |
1168 | ······firebird·dialect·will·be·used·if·it·has·been·installed,·otherwise·fall | 1168 | ······firebird·dialect·will·be·used·if·it·has·been·installed,·otherwise·fall |
1169 | ······back·to·the·(now·deprecated)·internal·Firebird·dialect. | 1169 | ······back·to·the·(now·deprecated)·internal·Firebird·dialect. |
1170 | ······References:·_\x8#_\x85_\x82_\x87_\x88 | 1170 | ······References:·_\x8#_\x85_\x82_\x87_\x88 |
1171 | *\x8**\x8**\x8**\x8**\x8*·1\x81.\x8.3\x83.\x8.1\x816\x86_\x8?\x8¶·*\x8**\x8**\x8**\x8**\x8* | 1171 | *\x8**\x8**\x8**\x8**\x8*·1\x81.\x8.3\x83.\x8.1\x816\x86_\x8?\x8¶·*\x8**\x8**\x8**\x8**\x8* |
Offset 2857, 36 lines modified | Offset 2857, 36 lines modified | ||
2857 | attributes·and·entities·that·are·installed·as·part·of·an·<a·class="reference·internal"·href="../core/dml.html#sqlalchemy.sql.expression.Insert"·title="sqlalchemy.sql.expression.Insert"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Insert</span></code></a>, | 2857 | attributes·and·entities·that·are·installed·as·part·of·an·<a·class="reference·internal"·href="../core/dml.html#sqlalchemy.sql.expression.Insert"·title="sqlalchemy.sql.expression.Insert"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Insert</span></code></a>, |
2858 | <a·class="reference·internal"·href="../core/dml.html#sqlalchemy.sql.expression.Update"·title="sqlalchemy.sql.expression.Update"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Update</span></code></a>,·or·<a·class="reference·internal"·href="../core/dml.html#sqlalchemy.sql.expression.Delete"·title="sqlalchemy.sql.expression.Delete"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Delete</span></code></a>·construct.·The | 2858 | <a·class="reference·internal"·href="../core/dml.html#sqlalchemy.sql.expression.Update"·title="sqlalchemy.sql.expression.Update"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Update</span></code></a>,·or·<a·class="reference·internal"·href="../core/dml.html#sqlalchemy.sql.expression.Delete"·title="sqlalchemy.sql.expression.Delete"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Delete</span></code></a>·construct.·The |
2859 | <a·class="reference·internal"·href="../core/selectable.html#sqlalchemy.sql.expression.Select.column_descriptions"·title="sqlalchemy.sql.expression.Select.column_descriptions"><code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">Select.column_descriptions</span></code></a>·accessor·is·also·now·implemented·for | 2859 | <a·class="reference·internal"·href="../core/selectable.html#sqlalchemy.sql.expression.Select.column_descriptions"·title="sqlalchemy.sql.expression.Select.column_descriptions"><code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">Select.column_descriptions</span></code></a>·accessor·is·also·now·implemented·for |
2860 | Core-only·selectables.</p> | 2860 | Core-only·selectables.</p> |
2861 | <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7861">#7861</a></p> | 2861 | <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7861">#7861</a></p> |
2862 | </p> | 2862 | </p> |
2863 | </li> | 2863 | </li> |
2864 | <li><p·class="caption"·id="change-1.4.33-2"><span·class="target"·id="change-9e8374aab257ac3366e02a4907fc449a"><strong>[orm]·[performance]·[bug]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-9e8374aab257ac3366e02a4907fc449a">¶</a></span><p>Improvements·in·memory·usage·by·the·ORM,·removing·a·significant·set·of | ||
2865 | intermediary·expression·objects·that·are·typically·stored·when·a·copy·of·an | ||
2866 | expression·object·is·created.·These·clones·have·been·greatly·reduced, | ||
2867 | reducing·the·number·of·total·expression·objects·stored·in·memory·by | ||
2868 | ORM·mappings·by·about·30%.</p> | ||
2869 | <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7823">#7823</a></p> | ||
2870 | </p> | ||
2871 | </li> | ||
2864 | <li><p·class="caption"·id="change-1.4.33- | 2872 | <li><p·class="caption"·id="change-1.4.33-3"><span·class="target"·id="change-6e997a9f24c37627b3bc1af26a5a2c9d"><strong>[orm]·[bug]·[regression]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-6e997a9f24c37627b3bc1af26a5a2c9d">¶</a></span><p>Fixed·regression·in·“dynamic”·loader·strategy·where·the |
2865 | <a·class="reference·internal"·href="../orm/query.html#sqlalchemy.orm.Query.filter_by"·title="sqlalchemy.orm.Query.filter_by"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">Query.filter_by()</span></code></a>·method·would·not·be·given·an·appropriate | 2873 | <a·class="reference·internal"·href="../orm/query.html#sqlalchemy.orm.Query.filter_by"·title="sqlalchemy.orm.Query.filter_by"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">Query.filter_by()</span></code></a>·method·would·not·be·given·an·appropriate |
2866 | entity·to·filter·from,·in·the·case·where·a·“secondary”·table·were·present | 2874 | entity·to·filter·from,·in·the·case·where·a·“secondary”·table·were·present |
2867 | in·the·relationship·being·queried·and·the·mapping·were·against·something | 2875 | in·the·relationship·being·queried·and·the·mapping·were·against·something |
2868 | complex·such·as·a·“with·polymorphic”.</p> | 2876 | complex·such·as·a·“with·polymorphic”.</p> |
2869 | <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7868">#7868</a></p> | 2877 | <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7868">#7868</a></p> |
2870 | </p> | 2878 | </p> |
2871 | </li> | 2879 | </li> |
2872 | <li><p·class="caption"·id="change-1.4.33- | 2880 | <li><p·class="caption"·id="change-1.4.33-4"><span·class="target"·id="change-4964a00cd636f3fbb10595151e1fb258"><strong>[orm]·[bug]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-4964a00cd636f3fbb10595151e1fb258">¶</a></span><p>Fixed·bug·where·<a·class="reference·internal"·href="../orm/composites.html#sqlalchemy.orm.composite"·title="sqlalchemy.orm.composite"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">composite()</span></code></a>·attributes·would·not·work·in |
2873 | conjunction·with·the·<a·class="reference·internal"·href="../orm/inheritance_loading.html#sqlalchemy.orm.selectin_polymorphic"·title="sqlalchemy.orm.selectin_polymorphic"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">selectin_polymorphic()</span></code></a>·loader·strategy·for | 2881 | conjunction·with·the·<a·class="reference·internal"·href="../orm/inheritance_loading.html#sqlalchemy.orm.selectin_polymorphic"·title="sqlalchemy.orm.selectin_polymorphic"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">selectin_polymorphic()</span></code></a>·loader·strategy·for |
2874 | joined·table·inheritance.</p> | 2882 | joined·table·inheritance.</p> |
2875 | <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7801">#7801</a></p> | 2883 | <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7801">#7801</a></p> |
2876 | </p> | 2884 | </p> |
2877 | </li> | 2885 | </li> |
2878 | <li><p·class="caption"·id="change-1.4.33-4"><span·class="target"·id="change-9e8374aab257ac3366e02a4907fc449a"><strong>[orm]·[bug]·[performance]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-9e8374aab257ac3366e02a4907fc449a">¶</a></span><p>Improvements·in·memory·usage·by·the·ORM,·removing·a·significant·set·of | ||
2879 | intermediary·expression·objects·that·are·typically·stored·when·a·copy·of·an | ||
2880 | expression·object·is·created.·These·clones·have·been·greatly·reduced, | ||
2881 | reducing·the·number·of·total·expression·objects·stored·in·memory·by | ||
2882 | ORM·mappings·by·about·30%.</p> | ||
2883 | <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7823">#7823</a></p> | ||
2884 | </p> | ||
2885 | </li> | ||
2886 | <li><p·class="caption"·id="change-1.4.33-5"><span·class="target"·id="change-cd2db57c1e1cd1330ba16d255c704a3d"><strong>[orm]·[bug]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-cd2db57c1e1cd1330ba16d255c704a3d">¶</a></span><p>Fixed·issue·where·the·<a·class="reference·internal"·href="../orm/inheritance_loading.html#sqlalchemy.orm.selectin_polymorphic"·title="sqlalchemy.orm.selectin_polymorphic"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">selectin_polymorphic()</span></code></a>·loader·option·would | 2886 | <li><p·class="caption"·id="change-1.4.33-5"><span·class="target"·id="change-cd2db57c1e1cd1330ba16d255c704a3d"><strong>[orm]·[bug]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-cd2db57c1e1cd1330ba16d255c704a3d">¶</a></span><p>Fixed·issue·where·the·<a·class="reference·internal"·href="../orm/inheritance_loading.html#sqlalchemy.orm.selectin_polymorphic"·title="sqlalchemy.orm.selectin_polymorphic"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">selectin_polymorphic()</span></code></a>·loader·option·would |
2887 | not·work·with·joined·inheritance·mappers·that·don’t·have·a·fixed | 2887 | not·work·with·joined·inheritance·mappers·that·don’t·have·a·fixed |
2888 | “polymorphic_on”·column.···Additionally·added·test·support·for·a·wider | 2888 | “polymorphic_on”·column.···Additionally·added·test·support·for·a·wider |
2889 | variety·of·usage·patterns·with·this·construct.</p> | 2889 | variety·of·usage·patterns·with·this·construct.</p> |
2890 | <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7799">#7799</a></p> | 2890 | <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7799">#7799</a></p> |
2891 | </p> | 2891 | </p> |
2892 | </li> | 2892 | </li> |
Offset 1901, 31 lines modified | Offset 1901, 31 lines modified | ||
1901 | [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[u\x8us\x8se\x8ec\x8ca\x8as\x8se\x8e]\x8]·_\x8¶ | 1901 | [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[u\x8us\x8se\x8ec\x8ca\x8as\x8se\x8e]\x8]·_\x8¶ |
1902 | Added·new·attributes·_\x8U_\x8p_\x8d_\x8a_\x8t_\x8e_\x8B_\x8a_\x8s_\x8e_\x8._\x8r_\x8e_\x8t_\x8u_\x8r_\x8n_\x8i_\x8n_\x8g_\x8__\x8c_\x8o_\x8l_\x8u_\x8m_\x8n_\x8__\x8d_\x8e_\x8s_\x8c_\x8r_\x8i_\x8p_\x8t_\x8i_\x8o_\x8n_\x8s·and | 1902 | Added·new·attributes·_\x8U_\x8p_\x8d_\x8a_\x8t_\x8e_\x8B_\x8a_\x8s_\x8e_\x8._\x8r_\x8e_\x8t_\x8u_\x8r_\x8n_\x8i_\x8n_\x8g_\x8__\x8c_\x8o_\x8l_\x8u_\x8m_\x8n_\x8__\x8d_\x8e_\x8s_\x8c_\x8r_\x8i_\x8p_\x8t_\x8i_\x8o_\x8n_\x8s·and |
1903 | _\x8U_\x8p_\x8d_\x8a_\x8t_\x8e_\x8B_\x8a_\x8s_\x8e_\x8._\x8e_\x8n_\x8t_\x8i_\x8t_\x8y_\x8__\x8d_\x8e_\x8s_\x8c_\x8r_\x8i_\x8p_\x8t_\x8i_\x8o_\x8n·to·allow·for·inspection·of·ORM·attributes·and | 1903 | _\x8U_\x8p_\x8d_\x8a_\x8t_\x8e_\x8B_\x8a_\x8s_\x8e_\x8._\x8e_\x8n_\x8t_\x8i_\x8t_\x8y_\x8__\x8d_\x8e_\x8s_\x8c_\x8r_\x8i_\x8p_\x8t_\x8i_\x8o_\x8n·to·allow·for·inspection·of·ORM·attributes·and |
1904 | entities·that·are·installed·as·part·of·an·_\x8I_\x8n_\x8s_\x8e_\x8r_\x8t,·_\x8U_\x8p_\x8d_\x8a_\x8t_\x8e,·or·_\x8D_\x8e_\x8l_\x8e_\x8t_\x8e·construct. | 1904 | entities·that·are·installed·as·part·of·an·_\x8I_\x8n_\x8s_\x8e_\x8r_\x8t,·_\x8U_\x8p_\x8d_\x8a_\x8t_\x8e,·or·_\x8D_\x8e_\x8l_\x8e_\x8t_\x8e·construct. |
1905 | The·_\x8S_\x8e_\x8l_\x8e_\x8c_\x8t_\x8._\x8c_\x8o_\x8l_\x8u_\x8m_\x8n_\x8__\x8d_\x8e_\x8s_\x8c_\x8r_\x8i_\x8p_\x8t_\x8i_\x8o_\x8n_\x8s·accessor·is·also·now·implemented·for·Core-only | 1905 | The·_\x8S_\x8e_\x8l_\x8e_\x8c_\x8t_\x8._\x8c_\x8o_\x8l_\x8u_\x8m_\x8n_\x8__\x8d_\x8e_\x8s_\x8c_\x8r_\x8i_\x8p_\x8t_\x8i_\x8o_\x8n_\x8s·accessor·is·also·now·implemented·for·Core-only |
1906 | selectables. | 1906 | selectables. |
1907 | References:·_\x8#_\x87_\x88_\x86_\x81 | 1907 | References:·_\x8#_\x87_\x88_\x86_\x81 |
1908 | [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[p\x8pe\x8er\x8rf\x8fo\x8or\x8rm\x8ma\x8an\x8nc\x8ce\x8e]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8¶ | ||
1909 | Improvements·in·memory·usage·by·the·ORM,·removing·a·significant·set·of | ||
1910 | intermediary·expression·objects·that·are·typically·stored·when·a·copy·of·an | ||
1911 | expression·object·is·created.·These·clones·have·been·greatly·reduced,·reducing | ||
1912 | the·number·of·total·expression·objects·stored·in·memory·by·ORM·mappings·by | ||
1913 | about·30%. | ||
1914 | References:·_\x8#_\x87_\x88_\x82_\x83 | ||
1908 | [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·[\x8[r\x8re\x8eg\x8gr\x8re\x8es\x8ss\x8si\x8io\x8on\x8n]\x8]·_\x8¶ | 1915 | [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·[\x8[r\x8re\x8eg\x8gr\x8re\x8es\x8ss\x8si\x8io\x8on\x8n]\x8]·_\x8¶ |
1909 | Fixed·regression·in·“dynamic”·loader·strategy·where·the·_\x8Q_\x8u_\x8e_\x8r_\x8y_\x8._\x8f_\x8i_\x8l_\x8t_\x8e_\x8r_\x8__\x8b_\x8y_\x8(_\x8) | 1916 | Fixed·regression·in·“dynamic”·loader·strategy·where·the·_\x8Q_\x8u_\x8e_\x8r_\x8y_\x8._\x8f_\x8i_\x8l_\x8t_\x8e_\x8r_\x8__\x8b_\x8y_\x8(_\x8) |
1910 | method·would·not·be·given·an·appropriate·entity·to·filter·from,·in·the·case | 1917 | method·would·not·be·given·an·appropriate·entity·to·filter·from,·in·the·case |
1911 | where·a·“secondary”·table·were·present·in·the·relationship·being·queried·and | 1918 | where·a·“secondary”·table·were·present·in·the·relationship·being·queried·and |
1912 | the·mapping·were·against·something·complex·such·as·a·“with·polymorphic”. | 1919 | the·mapping·were·against·something·complex·such·as·a·“with·polymorphic”. |
1913 | References:·_\x8#_\x87_\x88_\x86_\x88 | 1920 | References:·_\x8#_\x87_\x88_\x86_\x88 |
1914 | [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8¶ | 1921 | [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8¶ |
1915 | Fixed·bug·where·_\x8c_\x8o_\x8m_\x8p_\x8o_\x8s_\x8i_\x8t_\x8e_\x8(_\x8)·attributes·would·not·work·in·conjunction·with·the | 1922 | Fixed·bug·where·_\x8c_\x8o_\x8m_\x8p_\x8o_\x8s_\x8i_\x8t_\x8e_\x8(_\x8)·attributes·would·not·work·in·conjunction·with·the |
1916 | _\x8s_\x8e_\x8l_\x8e_\x8c_\x8t_\x8i_\x8n_\x8__\x8p_\x8o_\x8l_\x8y_\x8m_\x8o_\x8r_\x8p_\x8h_\x8i_\x8c_\x8(_\x8)·loader·strategy·for·joined·table·inheritance. | 1923 | _\x8s_\x8e_\x8l_\x8e_\x8c_\x8t_\x8i_\x8n_\x8__\x8p_\x8o_\x8l_\x8y_\x8m_\x8o_\x8r_\x8p_\x8h_\x8i_\x8c_\x8(_\x8)·loader·strategy·for·joined·table·inheritance. |
1917 | References:·_\x8#_\x87_\x88_\x80_\x81 | 1924 | References:·_\x8#_\x87_\x88_\x80_\x81 |
1918 | [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·[\x8[p\x8pe\x8er\x8rf\x8fo\x8or\x8rm\x8ma\x8an\x8nc\x8ce\x8e]\x8]·_\x8¶ | ||
1919 | Improvements·in·memory·usage·by·the·ORM,·removing·a·significant·set·of | ||
1920 | intermediary·expression·objects·that·are·typically·stored·when·a·copy·of·an | ||
1921 | expression·object·is·created.·These·clones·have·been·greatly·reduced,·reducing | ||
1922 | the·number·of·total·expression·objects·stored·in·memory·by·ORM·mappings·by | ||
1923 | about·30%. | ||
1924 | References:·_\x8#_\x87_\x88_\x82_\x83 | ||
1925 | [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8¶ | 1925 | [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8¶ |
1926 | Fixed·issue·where·the·_\x8s_\x8e_\x8l_\x8e_\x8c_\x8t_\x8i_\x8n_\x8__\x8p_\x8o_\x8l_\x8y_\x8m_\x8o_\x8r_\x8p_\x8h_\x8i_\x8c_\x8(_\x8)·loader·option·would·not·work·with | 1926 | Fixed·issue·where·the·_\x8s_\x8e_\x8l_\x8e_\x8c_\x8t_\x8i_\x8n_\x8__\x8p_\x8o_\x8l_\x8y_\x8m_\x8o_\x8r_\x8p_\x8h_\x8i_\x8c_\x8(_\x8)·loader·option·would·not·work·with |
1927 | joined·inheritance·mappers·that·don’t·have·a·fixed·“polymorphic_on”·column. | 1927 | joined·inheritance·mappers·that·don’t·have·a·fixed·“polymorphic_on”·column. |
1928 | Additionally·added·test·support·for·a·wider·variety·of·usage·patterns·with·this | 1928 | Additionally·added·test·support·for·a·wider·variety·of·usage·patterns·with·this |
1929 | construct. | 1929 | construct. |
1930 | References:·_\x8#_\x87_\x87_\x89_\x89 | 1930 | References:·_\x8#_\x87_\x87_\x89_\x89 |
1931 | [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8¶ | 1931 | [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8¶ |
Offset 308, 46 lines modified | Offset 308, 46 lines modified | ||
308 | </section> | 308 | </section> |
309 | <section·id="module-examples.association"> | 309 | <section·id="module-examples.association"> |
310 | <span·id="associations"></span><span·id="examples-associations"></span><h3>Associations<a·class="headerlink"·href="#module-examples.association"·title="Link·to·this·heading">¶</a></h3> | 310 | <span·id="associations"></span><span·id="examples-associations"></span><h3>Associations<a·class="headerlink"·href="#module-examples.association"·title="Link·to·this·heading">¶</a></h3> |
311 | <p>Examples·illustrating·the·usage·of·the·“association·object”·pattern, | 311 | <p>Examples·illustrating·the·usage·of·the·“association·object”·pattern, |
312 | where·an·intermediary·class·mediates·the·relationship·between·two | 312 | where·an·intermediary·class·mediates·the·relationship·between·two |
313 | classes·that·are·associated·in·a·many-to-many·pattern.</p> | 313 | classes·that·are·associated·in·a·many-to-many·pattern.</p> |
314 | <p>Listing·of·files:<ul·class="simple"> | 314 | <p>Listing·of·files:<ul·class="simple"> |
315 | <li><p><p><a·class="reference·external"·href="../_modules/examples/association/basic_association.html">basic_association.py</a>·-·Illustrate·a·many-to-many·relationship·between·an | ||
316 | “Order”·and·a·collection·of·“Item”·objects,·associating·a·purchase·price | ||
317 | with·each·via·an·association·object·called·“OrderItem”</p> | ||
318 | </p></li> | ||
315 | <li><p><p><a·class="reference·external"·href="../_modules/examples/association/dict_of_sets_with_default.html">dict_of_sets_with_default.py</a>·-·An·advanced·association·proxy·example·which | 319 | <li><p><p><a·class="reference·external"·href="../_modules/examples/association/dict_of_sets_with_default.html">dict_of_sets_with_default.py</a>·-·An·advanced·association·proxy·example·which |
316 | illustrates·nesting·of·association·proxies·to·produce·multi-level·Python | 320 | illustrates·nesting·of·association·proxies·to·produce·multi-level·Python |
317 | collections,·in·this·case·a·dictionary·with·string·keys·and·sets·of·integers | 321 | collections,·in·this·case·a·dictionary·with·string·keys·and·sets·of·integers |
318 | as·values,·which·conceal·the·underlying·mapped·classes.</p> | 322 | as·values,·which·conceal·the·underlying·mapped·classes.</p> |
319 | </p></li> | 323 | </p></li> |
320 | <li><p><p><a·class="reference·external"·href="../_modules/examples/association/proxied_association.html">proxied_association.py</a>·-·Same·example·as·basic_association,·adding·in | 324 | <li><p><p><a·class="reference·external"·href="../_modules/examples/association/proxied_association.html">proxied_association.py</a>·-·Same·example·as·basic_association,·adding·in |
321 | usage·of·<a·class="reference·internal"·href="extensions/associationproxy.html#module-sqlalchemy.ext.associationproxy"·title="sqlalchemy.ext.associationproxy"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">sqlalchemy.ext.associationproxy</span></code></a>·to·make·explicit·references | 325 | usage·of·<a·class="reference·internal"·href="extensions/associationproxy.html#module-sqlalchemy.ext.associationproxy"·title="sqlalchemy.ext.associationproxy"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">sqlalchemy.ext.associationproxy</span></code></a>·to·make·explicit·references |
322 | to·<code·class="docutils·literal·notranslate"><span·class="pre">OrderItem</span></code>·optional.</p> | 326 | to·<code·class="docutils·literal·notranslate"><span·class="pre">OrderItem</span></code>·optional.</p> |
323 | </p></li> | 327 | </p></li> |
324 | <li><p><p><a·class="reference·external"·href="../_modules/examples/association/basic_association.html">basic_association.py</a>·-·Illustrate·a·many-to-many·relationship·between·an | ||
325 | “Order”·and·a·collection·of·“Item”·objects,·associating·a·purchase·price | ||
326 | with·each·via·an·association·object·called·“OrderItem”</p> | ||
327 | </p></li> | ||
328 | </ul> | 328 | </ul> |
329 | </p> | 329 | </p> |
330 | </section> | 330 | </section> |
331 | <section·id="module-examples.asyncio"> | 331 | <section·id="module-examples.asyncio"> |
332 | <span·id="asyncio-integration"></span><span·id="examples-asyncio"></span><h3>Asyncio·Integration<a·class="headerlink"·href="#module-examples.asyncio"·title="Link·to·this·heading">¶</a></h3> | 332 | <span·id="asyncio-integration"></span><span·id="examples-asyncio"></span><h3>Asyncio·Integration<a·class="headerlink"·href="#module-examples.asyncio"·title="Link·to·this·heading">¶</a></h3> |
333 | <p>Examples·illustrating·the·asyncio·engine·feature·of·SQLAlchemy.</p> | 333 | <p>Examples·illustrating·the·asyncio·engine·feature·of·SQLAlchemy.</p> |
334 | <p>Listing·of·files:<ul·class="simple"> | 334 | <p>Listing·of·files:<ul·class="simple"> |
335 | <li><p><p><a·class="reference·external"·href="../_modules/examples/asyncio/gather_orm_statements.html">gather_orm_statements.py</a>·-·Illustrates·how·to·run·many·statements·concurrently·using·<code·class="docutils·literal·notranslate"><span·class="pre">asyncio.gather()</span></code> | ||
336 | along·many·asyncio·database·connections,·merging·ORM·results·into·a·single | ||
337 | <code·class="docutils·literal·notranslate"><span·class="pre">AsyncSession</span></code>.</p> | ||
338 | </p></li> | ||
339 | <li><p><p><a·class="reference·external"·href="../_modules/examples/asyncio/async_orm.html">async_orm.py</a>·-·Illustrates·use·of·the·sqlalchemy.ext.asyncio.AsyncSession·object | 335 | <li><p><p><a·class="reference·external"·href="../_modules/examples/asyncio/async_orm.html">async_orm.py</a>·-·Illustrates·use·of·the·sqlalchemy.ext.asyncio.AsyncSession·object |
340 | for·asynchronous·ORM·use.</p> | 336 | for·asynchronous·ORM·use.</p> |
341 | </p></li> | 337 | </p></li> |
342 | <li><p><p><a·class="reference·external"·href="../_modules/examples/asyncio/ | 338 | <li><p><p><a·class="reference·external"·href="../_modules/examples/asyncio/gather_orm_statements.html">gather_orm_statements.py</a>·-·Illustrates·how·to·run·many·statements·concurrently·using·<code·class="docutils·literal·notranslate"><span·class="pre">asyncio.gather()</span></code> |
339 | along·many·asyncio·database·connections,·merging·ORM·results·into·a·single | ||
340 | <code·class="docutils·literal·notranslate"><span·class="pre">AsyncSession</span></code>.</p> | ||
343 | </p></li> | 341 | </p></li> |
344 | <li><p><p><a·class="reference·external"·href="../_modules/examples/asyncio/greenlet_orm.html">greenlet_orm.py</a>·-·Illustrates·use·of·the·sqlalchemy.ext.asyncio.AsyncSession·object | 342 | <li><p><p><a·class="reference·external"·href="../_modules/examples/asyncio/greenlet_orm.html">greenlet_orm.py</a>·-·Illustrates·use·of·the·sqlalchemy.ext.asyncio.AsyncSession·object |
345 | for·asynchronous·ORM·use,·including·the·optional·run_sync()·method.</p> | 343 | for·asynchronous·ORM·use,·including·the·optional·run_sync()·method.</p> |
346 | </p></li> | 344 | </p></li> |
345 | <li><p><p><a·class="reference·external"·href="../_modules/examples/asyncio/basic.html">basic.py</a>·-·Illustrates·the·asyncio·engine·/·connection·interface.</p> | ||
346 | </p></li> | ||
347 | </ul> | 347 | </ul> |
348 | </p> | 348 | </p> |
349 | </section> | 349 | </section> |
350 | <section·id="module-examples.graphs"> | 350 | <section·id="module-examples.graphs"> |
351 | <span·id="directed-graphs"></span><h3>Directed·Graphs<a·class="headerlink"·href="#module-examples.graphs"·title="Link·to·this·heading">¶</a></h3> | 351 | <span·id="directed-graphs"></span><h3>Directed·Graphs<a·class="headerlink"·href="#module-examples.graphs"·title="Link·to·this·heading">¶</a></h3> |
352 | <p>An·example·of·persistence·for·a·directed·graph·structure.···The | 352 | <p>An·example·of·persistence·for·a·directed·graph·structure.···The |
353 | graph·is·stored·as·a·collection·of·edges,·each·referencing·both·a | 353 | graph·is·stored·as·a·collection·of·edges,·each·referencing·both·a |
Offset 105, 35 lines modified | Offset 105, 35 lines modified | ||
105 | Listing·of·files: | 105 | Listing·of·files: |
106 | ····*·_\x8a_\x8d_\x8j_\x8a_\x8c_\x8e_\x8n_\x8c_\x8y_\x8__\x8l_\x8i_\x8s_\x8t_\x8._\x8p_\x8y | 106 | ····*·_\x8a_\x8d_\x8j_\x8a_\x8c_\x8e_\x8n_\x8c_\x8y_\x8__\x8l_\x8i_\x8s_\x8t_\x8._\x8p_\x8y |
107 | *\x8**\x8**\x8**\x8*·A\x8As\x8ss\x8so\x8oc\x8ci\x8ia\x8at\x8ti\x8io\x8on\x8ns\x8s_\x8?\x8¶·*\x8**\x8**\x8**\x8* | 107 | *\x8**\x8**\x8**\x8*·A\x8As\x8ss\x8so\x8oc\x8ci\x8ia\x8at\x8ti\x8io\x8on\x8ns\x8s_\x8?\x8¶·*\x8**\x8**\x8**\x8* |
108 | Examples·illustrating·the·usage·of·the·“association·object”·pattern,·where·an | 108 | Examples·illustrating·the·usage·of·the·“association·object”·pattern,·where·an |
109 | intermediary·class·mediates·the·relationship·between·two·classes·that·are | 109 | intermediary·class·mediates·the·relationship·between·two·classes·that·are |
110 | associated·in·a·many-to-many·pattern. | 110 | associated·in·a·many-to-many·pattern. |
111 | Listing·of·files: | 111 | Listing·of·files: |
112 | ····*·_\x8b_\x8a_\x8s_\x8i_\x8c_\x8__\x8a_\x8s_\x8s_\x8o_\x8c_\x8i_\x8a_\x8t_\x8i_\x8o_\x8n_\x8._\x8p_\x8y·-·Illustrate·a·many-to-many·relationship·between·an | ||
113 | ······“Order”·and·a·collection·of·“Item”·objects,·associating·a·purchase·price | ||
114 | ······with·each·via·an·association·object·called·“OrderItem” | ||
112 | 115 | _.d_.i_.c_.t_.__.o_.f_.__.s_.e_.t_.s_.__.w_.i_.t_.h_.__.d_.e_.f_.a_.u_.l_.t_.._.p_.y·-·An·advanced·association·proxy·example·which | |
113 | 116 | illustrates·nesting·of·association·proxies·to·produce·multi-level·Python | |
114 | 117 | collections,·in·this·case·a·dictionary·with·string·keys·and·sets·of·integers·as | |
115 | 118 | values,·which·conceal·the·underlying·mapped·classes. | |
116 | _\x8p_\x8r_\x8o_\x8x_\x8i_\x8e_\x8d_\x8__\x8a_\x8s_\x8s_\x8o_\x8c_\x8i_\x8a_\x8t_\x8i_\x8o_\x8n_\x8._\x8p_\x8y·-·Same·example·as·basic_association,·adding·in·usage·of | 119 | _\x8p_\x8r_\x8o_\x8x_\x8i_\x8e_\x8d_\x8__\x8a_\x8s_\x8s_\x8o_\x8c_\x8i_\x8a_\x8t_\x8i_\x8o_\x8n_\x8._\x8p_\x8y·-·Same·example·as·basic_association,·adding·in·usage·of |
117 | _\x8s_\x8q_\x8l_\x8a_\x8l_\x8c_\x8h_\x8e_\x8m_\x8y_\x8._\x8e_\x8x_\x8t_\x8._\x8a_\x8s_\x8s_\x8o_\x8c_\x8i_\x8a_\x8t_\x8i_\x8o_\x8n_\x8p_\x8r_\x8o_\x8x_\x8y·to·make·explicit·references·to·OrderItem | 120 | _\x8s_\x8q_\x8l_\x8a_\x8l_\x8c_\x8h_\x8e_\x8m_\x8y_\x8._\x8e_\x8x_\x8t_\x8._\x8a_\x8s_\x8s_\x8o_\x8c_\x8i_\x8a_\x8t_\x8i_\x8o_\x8n_\x8p_\x8r_\x8o_\x8x_\x8y·to·make·explicit·references·to·OrderItem |
118 | optional. | 121 | optional. |
119 | _\x8b_\x8a_\x8s_\x8i_\x8c_\x8__\x8a_\x8s_\x8s_\x8o_\x8c_\x8i_\x8a_\x8t_\x8i_\x8o_\x8n_\x8._\x8p_\x8y·-·Illustrate·a·many-to-many·relationship·between·an | ||
120 | “Order”·and·a·collection·of·“Item”·objects,·associating·a·purchase·price·with | ||
121 | each·via·an·association·object·called·“OrderItem” | ||
122 | *\x8**\x8**\x8**\x8*·A\x8As\x8sy\x8yn\x8nc\x8ci\x8io\x8o·I\x8In\x8nt\x8te\x8eg\x8gr\x8ra\x8at\x8ti\x8io\x8on\x8n_\x8?\x8¶·*\x8**\x8**\x8**\x8* | 122 | *\x8**\x8**\x8**\x8*·A\x8As\x8sy\x8yn\x8nc\x8ci\x8io\x8o·I\x8In\x8nt\x8te\x8eg\x8gr\x8ra\x8at\x8ti\x8io\x8on\x8n_\x8?\x8¶·*\x8**\x8**\x8**\x8* |
123 | Examples·illustrating·the·asyncio·engine·feature·of·SQLAlchemy. | 123 | Examples·illustrating·the·asyncio·engine·feature·of·SQLAlchemy. |
124 | Listing·of·files: | 124 | Listing·of·files: |
125 | ····*·_\x8g_\x8a_\x8t_\x8h_\x8e_\x8r_\x8__\x8o_\x8r_\x8m_\x8__\x8s_\x8t_\x8a_\x8t_\x8e_\x8m_\x8e_\x8n_\x8t_\x8s_\x8._\x8p_\x8y·-·Illustrates·how·to·run·many·statements | ||
126 | ······concurrently·using·asyncio.gather()·along·many·asyncio·database | ||
127 | ······connections,·merging·ORM·results·into·a·single·AsyncSession. | ||
128 | _\x8a_\x8s_\x8y_\x8n_\x8c_\x8__\x8o_\x8r_\x8m_\x8._\x8p_\x8y·-·Illustrates·use·of·the·sqlalchemy.ext.asyncio.AsyncSession | 125 | ····*·_\x8a_\x8s_\x8y_\x8n_\x8c_\x8__\x8o_\x8r_\x8m_\x8._\x8p_\x8y·-·Illustrates·use·of·the·sqlalchemy.ext.asyncio.AsyncSession |
129 | object·for·asynchronous·ORM·use. | 126 | ······object·for·asynchronous·ORM·use. |
130 | _\x8 | 127 | _\x8g_.a_.t_.h_.e_.r_.__.o_.r_.m_.__.s_.t_.a_.t_.e_.m_.e_.n_.t_.s_.._.p_.y·-·Illustrates·how·to·run·many·statements·concurrently |
128 | using·asyncio.gather()·along·many·asyncio·database·connections,·merging·ORM | ||
129 | results·into·a·single·AsyncSession. | ||
131 | _\x8g_\x8r_\x8e_\x8e_\x8n_\x8l_\x8e_\x8t_\x8__\x8o_\x8r_\x8m_\x8._\x8p_\x8y·-·Illustrates·use·of·the·sqlalchemy.ext.asyncio.AsyncSession | 130 | _\x8g_\x8r_\x8e_\x8e_\x8n_\x8l_\x8e_\x8t_\x8__\x8o_\x8r_\x8m_\x8._\x8p_\x8y·-·Illustrates·use·of·the·sqlalchemy.ext.asyncio.AsyncSession |
132 | object·for·asynchronous·ORM·use,·including·the·optional·run_sync()·method. | 131 | object·for·asynchronous·ORM·use,·including·the·optional·run_sync()·method. |
132 | _\x8b_\x8a_\x8s_\x8i_\x8c_\x8._\x8p_\x8y·-·Illustrates·the·asyncio·engine·/·connection·interface. | ||
133 | *\x8**\x8**\x8**\x8*·D\x8Di\x8ir\x8re\x8ec\x8ct\x8te\x8ed\x8d·G\x8Gr\x8ra\x8ap\x8ph\x8hs\x8s_\x8?\x8¶·*\x8**\x8**\x8**\x8* | 133 | *\x8**\x8**\x8**\x8*·D\x8Di\x8ir\x8re\x8ec\x8ct\x8te\x8ed\x8d·G\x8Gr\x8ra\x8ap\x8ph\x8hs\x8s_\x8?\x8¶·*\x8**\x8**\x8**\x8* |
134 | An·example·of·persistence·for·a·directed·graph·structure.·The·graph·is·stored | 134 | An·example·of·persistence·for·a·directed·graph·structure.·The·graph·is·stored |
135 | as·a·collection·of·edges,·each·referencing·both·a·“lower”·and·an·“upper”·node | 135 | as·a·collection·of·edges,·each·referencing·both·a·“lower”·and·an·“upper”·node |
136 | in·a·table·of·nodes.·Basic·persistence·and·querying·for·lower-·and·upper- | 136 | in·a·table·of·nodes.·Basic·persistence·and·querying·for·lower-·and·upper- |
137 | neighbors·are·illustrated: | 137 | neighbors·are·illustrated: |
138 | n2·=·Node(2) | 138 | n2·=·Node(2) |
139 | n5·=·Node(5) | 139 | n5·=·Node(5) |
Offset 7086, 17 lines modified | Offset 7086, 17 lines modified | ||
7086 | ········"4138":·12, | 7086 | ········"4138":·12, |
7087 | ········"5265":·12, | 7087 | ········"5265":·12, |
7088 | ········"5266":·12, | 7088 | ········"5266":·12, |
7089 | ········"td":·[12,·63], | 7089 | ········"td":·[12,·63], |
7090 | ········"protocol":·[12,·17,·48,·51,·55,·59,·65,·66,·80,·102,·113], | 7090 | ········"protocol":·[12,·17,·48,·51,·55,·59,·65,·66,·80,·102,·113], |
7091 | ········"5255":·12, | 7091 | ········"5255":·12, |
7092 | ········"5271":·12, | 7092 | ········"5271":·12, |
7093 | ········"5314":·12, | ||
7093 | ········"outputtyp":·12, | 7094 | ········"outputtyp":·12, |
7094 | ········"5246":·12, | 7095 | ········"5246":·12, |
7095 | ········"5314":·12, | ||
7096 | ········"5278":·12, | 7096 | ········"5278":·12, |
7097 | ········"planner":·[12,·23,·67], | 7097 | ········"planner":·[12,·23,·67], |
7098 | ········"5162":·12, | 7098 | ········"5162":·12, |
7099 | ········"slot":·[12,·56,·87,·91], | 7099 | ········"slot":·[12,·56,·87,·91], |
7100 | ········"5228":·12, | 7100 | ········"5228":·12, |
7101 | ········"5210":·12, | 7101 | ········"5210":·12, |
7102 | ········"eval":·[12,·75,·84,·124,·140], | 7102 | ········"eval":·[12,·75,·84,·124,·140], |