130 KB
/srv/reproducible-results/rbuild-debian/r-b-build.fGa1kMtF/b1/sqlalchemy_2.0.19+ds1-1_armhf.changes vs.
/srv/reproducible-results/rbuild-debian/r-b-build.fGa1kMtF/b2/sqlalchemy_2.0.19+ds1-1_armhf.changes
540 B
Files
    
Offset 1, 5 lines modifiedOffset 1, 5 lines modified
  
1 ·c991322af77ab9d6105236ca8d261d3e·3987500·doc·optional·python-sqlalchemy-doc_2.0.19+ds1-1_all.deb1 ·964144a42937929ccb161b3218aa226a·3987208·doc·optional·python-sqlalchemy-doc_2.0.19+ds1-1_all.deb
2 ·79ed1434092903e15519a0db9ff9711d·1660224·debug·optional·python3-sqlalchemy-ext-dbgsym_2.0.19+ds1-1_armhf.deb2 ·79ed1434092903e15519a0db9ff9711d·1660224·debug·optional·python3-sqlalchemy-ext-dbgsym_2.0.19+ds1-1_armhf.deb
3 ·633a12e75de72ddc63c0ae7da1144796·197968·python·optional·python3-sqlalchemy-ext_2.0.19+ds1-1_armhf.deb3 ·633a12e75de72ddc63c0ae7da1144796·197968·python·optional·python3-sqlalchemy-ext_2.0.19+ds1-1_armhf.deb
4 ·9796ef149b40120a63428bfee9fa60a2·1175628·python·optional·python3-sqlalchemy_2.0.19+ds1-1_all.deb4 ·9796ef149b40120a63428bfee9fa60a2·1175628·python·optional·python3-sqlalchemy_2.0.19+ds1-1_all.deb
129 KB
python-sqlalchemy-doc_2.0.19+ds1-1_all.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2023-07-21·11:51:22.000000·debian-binary1 -rw-r--r--···0········0········0········4·2023-07-21·11:51:22.000000·debian-binary
2 -rw-r--r--···0········0········0····13716·2023-07-21·11:51:22.000000·control.tar.xz2 -rw-r--r--···0········0········0····13716·2023-07-21·11:51:22.000000·control.tar.xz
3 -rw-r--r--···0········0········0··3973592·2023-07-21·11:51:22.000000·data.tar.xz3 -rw-r--r--···0········0········0··3973300·2023-07-21·11:51:22.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
128 KB
data.tar.xz
128 KB
data.tar
3.15 KB
./usr/share/doc/python-sqlalchemy-doc/html/changelog/changelog_10.html
    
Offset 592, 15 lines modifiedOffset 592, 15 lines modified
592 <section·id="changelog">592 <section·id="changelog">
593 <h1>1.0·Changelog<a·class="headerlink"·href="#changelog"·title="Link·to·this·heading">¶</a></h1>593 <h1>1.0·Changelog<a·class="headerlink"·href="#changelog"·title="Link·to·this·heading">¶</a></h1>
594 <section·id="change-1.0.19">594 <section·id="change-1.0.19">
595 <h2·class="release-version">1.0.19<a·class="headerlink"·href="#change-1.0.19"·title="Link·to·this·heading">¶</a></h2>595 <h2·class="release-version">1.0.19<a·class="headerlink"·href="#change-1.0.19"·title="Link·to·this·heading">¶</a></h2>
596 Released:·August·3,·2017<section·id="change-1.0.19-oracle">596 Released:·August·3,·2017<section·id="change-1.0.19-oracle">
597 <h3>oracle<a·class="headerlink"·href="#change-1.0.19-oracle"·title="Link·to·this·heading">¶</a></h3>597 <h3>oracle<a·class="headerlink"·href="#change-1.0.19-oracle"·title="Link·to·this·heading">¶</a></h3>
598 <ul·class="simple">598 <ul·class="simple">
599 <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>·where599 <li><p·class="caption"·id="change-1.0.19-0"><span·class="target"·id="change-ec8fd72ca0ab2d0123169536543fb6cd"><strong>[oracle]·[bug]·[performance]·[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
600 cx_Oracle·as·of·version·5.3·dropped·the·<code·class="docutils·literal·notranslate"><span·class="pre">.UNICODE</span></code>·symbol·from·its600 cx_Oracle·as·of·version·5.3·dropped·the·<code·class="docutils·literal·notranslate"><span·class="pre">.UNICODE</span></code>·symbol·from·its
601 namespace,··which·was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being601 namespace,··which·was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being
602 turned·on·unconditionally,·which·invokes·functions·on·the·SQLAlchemy602 turned·on·unconditionally,·which·invokes·functions·on·the·SQLAlchemy
603 side·which·convert·all·strings·to·unicode·unconditionally·and·causing603 side·which·convert·all·strings·to·unicode·unconditionally·and·causing
604 a·performance·impact.··In·fact,·per·cx_Oracle’s·author·the604 a·performance·impact.··In·fact,·per·cx_Oracle’s·author·the
605 “WITH_UNICODE”·mode·has·been·removed·entirely·as·of·5.1,·so·the·expensive·unicode605 “WITH_UNICODE”·mode·has·been·removed·entirely·as·of·5.1,·so·the·expensive·unicode
606 conversion·functions·are·no·longer·necessary·and·are·disabled·if606 conversion·functions·are·no·longer·necessary·and·are·disabled·if
1.14 KB
html2text {}
    
Offset 318, 15 lines modifiedOffset 318, 15 lines modified
318 ······················#·_\x8o_\x8r_\x8a_\x8c_\x8l_\x8e318 ······················#·_\x8o_\x8r_\x8a_\x8c_\x8l_\x8e
319 ······················#·_\x8t_\x8e_\x8s_\x8t_\x8s319 ······················#·_\x8t_\x8e_\x8s_\x8t_\x8s
320 ······················#·_\x8m_\x8i_\x8s_\x8c320 ······················#·_\x8m_\x8i_\x8s_\x8c
321 *\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*321 *\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*
322 *\x8**\x8**\x8**\x8**\x8*·1\x81.\x8.0\x80.\x8.1\x819\x89_\x8?\x8·*\x8**\x8**\x8**\x8**\x8*322 *\x8**\x8**\x8**\x8**\x8*·1\x81.\x8.0\x80.\x8.1\x819\x89_\x8?\x8·*\x8**\x8**\x8**\x8**\x8*
323 Released:·August·3,·2017323 Released:·August·3,·2017
324 *\x8**\x8**\x8**\x8*·o\x8or\x8ra\x8ac\x8cl\x8le\x8e_\x8?\x8·*\x8**\x8**\x8**\x8*324 *\x8**\x8**\x8**\x8*·o\x8or\x8ra\x8ac\x8cl\x8le\x8e_\x8?\x8·*\x8**\x8**\x8**\x8*
325 ····*·[\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]·_\x8325 ····*·[\x8[o\x8or\x8ra\x8ac\x8cl\x8le\x8e]\x8]·[\x8[b.bu.ug.g].]·[.[p.pe.er.rf.fo.or.rm.ma.an.nc.ce.e]\x8]·[\x8[p\x8py\x8y2\x82k\x8k]\x8]·_\x8
326 ······Fixed·performance·regression·caused·by·the·fix·for·_\x8#_\x83_\x89_\x83_\x87·where·cx_Oracle326 ······Fixed·performance·regression·caused·by·the·fix·for·_\x8#_\x83_\x89_\x83_\x87·where·cx_Oracle
327 ······as·of·version·5.3·dropped·the·.UNICODE·symbol·from·its·namespace,·which327 ······as·of·version·5.3·dropped·the·.UNICODE·symbol·from·its·namespace,·which
328 ······was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being·turned·on328 ······was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being·turned·on
329 ······unconditionally,·which·invokes·functions·on·the·SQLAlchemy·side·which329 ······unconditionally,·which·invokes·functions·on·the·SQLAlchemy·side·which
330 ······convert·all·strings·to·unicode·unconditionally·and·causing·a·performance330 ······convert·all·strings·to·unicode·unconditionally·and·causing·a·performance
331 ······impact.·In·fact,·per·cx_Oracle’s·author·the·“WITH_UNICODE”·mode·has·been331 ······impact.·In·fact,·per·cx_Oracle’s·author·the·“WITH_UNICODE”·mode·has·been
332 ······removed·entirely·as·of·5.1,·so·the·expensive·unicode·conversion·functions332 ······removed·entirely·as·of·5.1,·so·the·expensive·unicode·conversion·functions
3.09 KB
./usr/share/doc/python-sqlalchemy-doc/html/changelog/changelog_11.html
    
Offset 875, 15 lines modifiedOffset 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]·[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>·where882 <li><p·class="caption"·id="change-1.1.13-0"><span·class="target"·id="change-91e9180bc7f72ab73ee81944ee6c0b5b"><strong>[oracle]·[bug]·[performance]·[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·its883 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·being884 namespace,··which·was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being
885 turned·on·unconditionally,·which·invokes·functions·on·the·SQLAlchemy885 turned·on·unconditionally,·which·invokes·functions·on·the·SQLAlchemy
886 side·which·convert·all·strings·to·unicode·unconditionally·and·causing886 side·which·convert·all·strings·to·unicode·unconditionally·and·causing
887 a·performance·impact.··In·fact,·per·cx_Oracle’s·author·the887 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·unicode888 “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·if889 conversion·functions·are·no·longer·necessary·and·are·disabled·if
1.18 KB
html2text {}
    
Offset 495, 15 lines modifiedOffset 495, 15 lines modified
495 ······the·same·PRECEDING·or·FOLLOWING·keywords·in·a·range·by·allowing·for·the495 ······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_\x83498 ······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,·2017500 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[p.pe.er.rf.fo.or.rm.ma.an.nc.ce.e].]·[.[b.bu.ug.g]\x8]·[\x8[p\x8py\x8y2\x82k\x8k]\x8]·_\x8502 ····*·[\x8[o\x8or\x8ra\x8ac\x8cl\x8le\x8e]\x8]·[\x8[b.bu.ug.g].]·[.[p.pe.er.rf.fo.or.rm.ma.an.nc.ce.e]\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_Oracle503 ······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,·which504 ······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·on505 ······was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being·turned·on
506 ······unconditionally,·which·invokes·functions·on·the·SQLAlchemy·side·which506 ······unconditionally,·which·invokes·functions·on·the·SQLAlchemy·side·which
507 ······convert·all·strings·to·unicode·unconditionally·and·causing·a·performance507 ······convert·all·strings·to·unicode·unconditionally·and·causing·a·performance
508 ······impact.·In·fact,·per·cx_Oracle’s·author·the·“WITH_UNICODE”·mode·has·been508 ······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·functions509 ······removed·entirely·as·of·5.1,·so·the·expensive·unicode·conversion·functions
2.91 KB
./usr/share/doc/python-sqlalchemy-doc/html/changelog/changelog_12.html
    
Offset 2977, 15 lines modifiedOffset 2977, 15 lines modified
2977 </p>2977 </p>
2978 </li>2978 </li>
2979 </ul>2979 </ul>
2980 </section>2980 </section>
2981 <section·id="change-1.2.0b3-oracle">2981 <section·id="change-1.2.0b3-oracle">
2982 <h3>oracle<a·class="headerlink"·href="#change-1.2.0b3-oracle"·title="Link·to·this·heading">¶</a></h3>2982 <h3>oracle<a·class="headerlink"·href="#change-1.2.0b3-oracle"·title="Link·to·this·heading">¶</a></h3>
2983 <ul·class="simple">2983 <ul·class="simple">
2984 <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>·where2984 <li><p·class="caption"·id="change-1.2.0b3-43"><span·class="target"·id="change-7cb9a3370310381d19eb1a17c5a84a91"><strong>[oracle]·[bug]·[performance]·[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
2985 cx_Oracle·as·of·version·5.3·dropped·the·<code·class="docutils·literal·notranslate"><span·class="pre">.UNICODE</span></code>·symbol·from·its2985 cx_Oracle·as·of·version·5.3·dropped·the·<code·class="docutils·literal·notranslate"><span·class="pre">.UNICODE</span></code>·symbol·from·its
2986 namespace,··which·was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being2986 namespace,··which·was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being
2987 turned·on·unconditionally,·which·invokes·functions·on·the·SQLAlchemy2987 turned·on·unconditionally,·which·invokes·functions·on·the·SQLAlchemy
2988 side·which·convert·all·strings·to·unicode·unconditionally·and·causing2988 side·which·convert·all·strings·to·unicode·unconditionally·and·causing
2989 a·performance·impact.··In·fact,·per·cx_Oracle’s·author·the2989 a·performance·impact.··In·fact,·per·cx_Oracle’s·author·the
2990 “WITH_UNICODE”·mode·has·been·removed·entirely·as·of·5.1,·so·the·expensive·unicode2990 “WITH_UNICODE”·mode·has·been·removed·entirely·as·of·5.1,·so·the·expensive·unicode
2991 conversion·functions·are·no·longer·necessary·and·are·disabled·if2991 conversion·functions·are·no·longer·necessary·and·are·disabled·if
1.15 KB
html2text {}
    
Offset 1878, 15 lines modifiedOffset 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]·_\x81879 [\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·clustered1881 index·that·is·implicitly·present·on·a·table·that·does·not·specify·a·clustered
1882 index.1882 index.
1883 References:·_\x8#_\x84_\x80_\x85_\x891883 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[p.pe.er.rf.fo.or.rm.ma.an.nc.ce.e].]·[.[b.bu.ug.g]\x8]·[\x8[p\x8py\x8y2\x82k\x8k]\x8]·_\x81885 ····*·[\x8[o\x8or\x8ra\x8ac\x8cl\x8le\x8e]\x8]·[\x8[b.bu.ug.g].]·[.[p.pe.er.rf.fo.or.rm.ma.an.nc.ce.e]\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_Oracle1886 ······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,·which1887 ······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·on1888 ······was·interpreted·as·cx_Oracle’s·“WITH_UNICODE”·mode·being·turned·on
1889 ······unconditionally,·which·invokes·functions·on·the·SQLAlchemy·side·which1889 ······unconditionally,·which·invokes·functions·on·the·SQLAlchemy·side·which
1890 ······convert·all·strings·to·unicode·unconditionally·and·causing·a·performance1890 ······convert·all·strings·to·unicode·unconditionally·and·causing·a·performance
1891 ······impact.·In·fact,·per·cx_Oracle’s·author·the·“WITH_UNICODE”·mode·has·been1891 ······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·functions1892 ······removed·entirely·as·of·5.1,·so·the·expensive·unicode·conversion·functions
8.99 KB
./usr/share/doc/python-sqlalchemy-doc/html/changelog/changelog_13.html
    
Offset 1803, 30 lines modifiedOffset 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>
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·use1816 <li><p·class="caption"·id="change-1.3.17-15"><span·class="target"·id="change-cc5a1743d1951d72594d609e6e1a5c99"><strong>[oracle]·[bug]·[performance]</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
1811 cx_Oracle’s·native·implementation·which·fetches·CLOB/BLOB·objects·inline1817 cx_Oracle’s·native·implementation·which·fetches·CLOB/BLOB·objects·inline
1812 with·other·result·columns,·rather·than·performing·a·separate·fetch.·As1818 with·other·result·columns,·rather·than·performing·a·separate·fetch.·As
1813 always,·this·can·be·disabled·by·setting·auto_convert_lobs·to·False.</p>1819 always,·this·can·be·disabled·by·setting·auto_convert_lobs·to·False.</p>
1814 <p>As·part·of·this·change,·the·behavior·of·a·CLOB·that·was·given·a·blank1820 <p>As·part·of·this·change,·the·behavior·of·a·CLOB·that·was·given·a·blank
1815 string·on·INSERT·now·returns·None·on·SELECT,·which·is·now·consistent·with1821 string·on·INSERT·now·returns·None·on·SELECT,·which·is·now·consistent·with
1816 that·of·VARCHAR·on·Oracle.</p>1822 that·of·VARCHAR·on·Oracle.</p>
1817 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/5314">#5314</a></p>1823 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/5314">#5314</a></p>
1818 </p>1824 </p>
1819 </li>1825 </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-misc">1828 <section·id="change-1.3.17-misc">
1829 <h3>misc<a·class="headerlink"·href="#change-1.3.17-misc"·title="Link·to·this·heading">¶</a></h3>1829 <h3>misc<a·class="headerlink"·href="#change-1.3.17-misc"·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>[change]·[firebird]</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·external1831 <li><p·class="caption"·id="change-1.3.17-16"><span·class="target"·id="change-3d26d8810b452ce62aee1841b6a4725d"><strong>[change]·[firebird]</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,
3.55 KB
html2text {}
    
Offset 1144, 28 lines modifiedOffset 1144, 28 lines modified
1144 ······References:·_\x8#_\x85_\x82_\x85_\x851144 ······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]·_\x81145 [\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·when1146 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·concat1147 using·SQL·server·versions·before·2012,·which·does·not·support·the·concat
1148 function.1148 function.
1149 References:·_\x8#_\x85_\x82_\x87_\x811149 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 
1160 [\x8[o\x8or\x8ra\x8ac\x8cl\x8le\x8e]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x81151 ····*·[\x8[o\x8or\x8ra\x8ac\x8cl\x8le\x8e]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8
1161 Some·modifications·to·how·the·cx_oracle·dialect·sets·up·per-column·outputtype1152 ······Some·modifications·to·how·the·cx_oracle·dialect·sets·up·per-column
1162 handlers·for·LOB·and·numeric·datatypes·to·adjust·for·potential·changes·coming1153 ······outputtype·handlers·for·LOB·and·numeric·datatypes·to·adjust·for·potential
1163 in·cx_Oracle·8.1154 ······changes·coming·in·cx_Oracle·8.
1164 References:·_\x8#_\x85_\x82_\x84_\x861155 ······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*·m\x8mi\x8is\x8sc\x8c_\x8?\x8·*\x8**\x8**\x8**\x8*1165 *\x8**\x8**\x8**\x8*·m\x8mi\x8is\x8sc\x8c_\x8?\x8·*\x8**\x8**\x8**\x8*
1166 ····*·[\x8[c\x8ch\x8ha\x8an\x8ng\x8ge\x8e]\x8]·[\x8[f\x8fi\x8ir\x8re\x8eb\x8bi\x8ir\x8rd\x8d]\x8]·_\x81166 ····*·[\x8[c\x8ch\x8ha\x8an\x8ng\x8ge\x8e]\x8]·[\x8[f\x8fi\x8ir\x8re\x8eb\x8bi\x8ir\x8rd\x8d]\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·fall1168 ······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_\x881170 ······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*
35.4 KB
./usr/share/doc/python-sqlalchemy-doc/html/changelog/changelog_14.html
    
Offset 2763, 36 lines modifiedOffset 2763, 36 lines modified
2763 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>,2763 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>,
2764 <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.·The2764 <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
2765 <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·for2765 <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
2766 Core-only·selectables.</p>2766 Core-only·selectables.</p>
2767 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7861">#7861</a></p>2767 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7861">#7861</a></p>
2768 </p>2768 </p>
2769 </li>2769 </li>
2770 <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 
2771 intermediary·expression·objects·that·are·typically·stored·when·a·copy·of·an 
2772 expression·object·is·created.·These·clones·have·been·greatly·reduced, 
2773 reducing·the·number·of·total·expression·objects·stored·in·memory·by 
2774 ORM·mappings·by·about·30%.</p> 
2775 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7823">#7823</a></p> 
2776 </p> 
2777 </li> 
2778 <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·the2770 <li><p·class="caption"·id="change-1.4.33-2"><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
2779 <a·class="reference·internal"·href="../orm/queryguide/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·appropriate2771 <a·class="reference·internal"·href="../orm/queryguide/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
2780 entity·to·filter·from,·in·the·case·where·a·“secondary”·table·were·present2772 entity·to·filter·from,·in·the·case·where·a·“secondary”·table·were·present
2781 in·the·relationship·being·queried·and·the·mapping·were·against·something2773 in·the·relationship·being·queried·and·the·mapping·were·against·something
2782 complex·such·as·a·“with·polymorphic”.</p>2774 complex·such·as·a·“with·polymorphic”.</p>
2783 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7868">#7868</a></p>2775 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7868">#7868</a></p>
2784 </p>2776 </p>
2785 </li>2777 </li>
2786 <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·in2778 <li><p·class="caption"·id="change-1.4.33-3"><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
2787 conjunction·with·the·<a·class="reference·internal"·href="../orm/queryguide/inheritance.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·for2779 conjunction·with·the·<a·class="reference·internal"·href="../orm/queryguide/inheritance.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
2788 joined·table·inheritance.</p>2780 joined·table·inheritance.</p>
2789 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7801">#7801</a></p>2781 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7801">#7801</a></p>
2790 </p>2782 </p>
2791 </li>2783 </li>
 2784 <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
 2785 intermediary·expression·objects·that·are·typically·stored·when·a·copy·of·an
 2786 expression·object·is·created.·These·clones·have·been·greatly·reduced,
 2787 reducing·the·number·of·total·expression·objects·stored·in·memory·by
 2788 ORM·mappings·by·about·30%.</p>
 2789 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7823">#7823</a></p>
 2790 </p>
 2791 </li>
2792 <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/queryguide/inheritance.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·would2792 <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/queryguide/inheritance.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
2793 not·work·with·joined·inheritance·mappers·that·don’t·have·a·fixed2793 not·work·with·joined·inheritance·mappers·that·don’t·have·a·fixed
2794 “polymorphic_on”·column.···Additionally·added·test·support·for·a·wider2794 “polymorphic_on”·column.···Additionally·added·test·support·for·a·wider
2795 variety·of·usage·patterns·with·this·construct.</p>2795 variety·of·usage·patterns·with·this·construct.</p>
2796 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7799">#7799</a></p>2796 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/7799">#7799</a></p>
2797 </p>2797 </p>
2798 </li>2798 </li>
13.1 KB
html2text {}
    
Offset 1844, 31 lines modifiedOffset 1844, 31 lines modified
1844 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[u\x8us\x8se\x8ec\x8ca\x8as\x8se\x8e]\x8]·_\x81844 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[u\x8us\x8se\x8ec\x8ca\x8as\x8se\x8e]\x8]·_\x8
1845 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·and1845 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
1846 _\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·and1846 _\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
1847 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.1847 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.
1848 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-only1848 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
1849 selectables.1849 selectables.
1850 References:·_\x8#_\x87_\x88_\x86_\x811850 References:·_\x8#_\x87_\x88_\x86_\x81
1851 [\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 
1852 Improvements·in·memory·usage·by·the·ORM,·removing·a·significant·set·of 
1853 intermediary·expression·objects·that·are·typically·stored·when·a·copy·of·an 
1854 expression·object·is·created.·These·clones·have·been·greatly·reduced,·reducing 
1855 the·number·of·total·expression·objects·stored·in·memory·by·ORM·mappings·by 
1856 about·30%. 
1857 References:·_\x8#_\x87_\x88_\x82_\x83 
1858 [\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]·_\x81851 [\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
1859 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)1852 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)
1860 method·would·not·be·given·an·appropriate·entity·to·filter·from,·in·the·case1853 method·would·not·be·given·an·appropriate·entity·to·filter·from,·in·the·case
1861 where·a·“secondary”·table·were·present·in·the·relationship·being·queried·and1854 where·a·“secondary”·table·were·present·in·the·relationship·being·queried·and
1862 the·mapping·were·against·something·complex·such·as·a·“with·polymorphic”.1855 the·mapping·were·against·something·complex·such·as·a·“with·polymorphic”.
1863 References:·_\x8#_\x87_\x88_\x86_\x881856 References:·_\x8#_\x87_\x88_\x86_\x88
1864 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x81857 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8
1865 Fixed·bug·where·_\x8c_\x8o_\x8m_\x8p_\x8o_\x8s_\x8i_\x8t_\x8e_\x8(_\x8)·attributes·would·not·work·in·conjunction·with·the1858 Fixed·bug·where·_\x8c_\x8o_\x8m_\x8p_\x8o_\x8s_\x8i_\x8t_\x8e_\x8(_\x8)·attributes·would·not·work·in·conjunction·with·the
1866 _\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.1859 _\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.
1867 References:·_\x8#_\x87_\x88_\x80_\x811860 References:·_\x8#_\x87_\x88_\x80_\x81
 1861 [\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
 1862 Improvements·in·memory·usage·by·the·ORM,·removing·a·significant·set·of
 1863 intermediary·expression·objects·that·are·typically·stored·when·a·copy·of·an
 1864 expression·object·is·created.·These·clones·have·been·greatly·reduced,·reducing
 1865 the·number·of·total·expression·objects·stored·in·memory·by·ORM·mappings·by
 1866 about·30%.
 1867 References:·_\x8#_\x87_\x88_\x82_\x83
1868 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x81868 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8
1869 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·with1869 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
1870 joined·inheritance·mappers·that·don’t·have·a·fixed·“polymorphic_on”·column.1870 joined·inheritance·mappers·that·don’t·have·a·fixed·“polymorphic_on”·column.
1871 Additionally·added·test·support·for·a·wider·variety·of·usage·patterns·with·this1871 Additionally·added·test·support·for·a·wider·variety·of·usage·patterns·with·this
1872 construct.1872 construct.
1873 References:·_\x8#_\x87_\x87_\x89_\x891873 References:·_\x8#_\x87_\x87_\x89_\x89
1874 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x81874 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8
25.9 KB
./usr/share/doc/python-sqlalchemy-doc/html/changelog/changelog_20.html
    
Offset 3863, 39 lines modifiedOffset 3863, 39 lines modified
3863 <a·class="reference·internal"·href="../orm/relationship_api.html#sqlalchemy.orm.relationship"·title="sqlalchemy.orm.relationship"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">relationship()</span></code></a>·etc.·to·provide·for·the·Python·dataclasses3863 <a·class="reference·internal"·href="../orm/relationship_api.html#sqlalchemy.orm.relationship"·title="sqlalchemy.orm.relationship"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">relationship()</span></code></a>·etc.·to·provide·for·the·Python·dataclasses
3864 <code·class="docutils·literal·notranslate"><span·class="pre">compare</span></code>·parameter·on·<code·class="docutils·literal·notranslate"><span·class="pre">field()</span></code>,·when·using·the3864 <code·class="docutils·literal·notranslate"><span·class="pre">compare</span></code>·parameter·on·<code·class="docutils·literal·notranslate"><span·class="pre">field()</span></code>,·when·using·the
3865 <a·class="reference·internal"·href="../orm/dataclasses.html#orm-declarative-native-dataclasses"><span·class="std·std-ref">Declarative·Dataclass·Mapping</span></a>·feature.·Pull·request·courtesy3865 <a·class="reference·internal"·href="../orm/dataclasses.html#orm-declarative-native-dataclasses"><span·class="std·std-ref">Declarative·Dataclass·Mapping</span></a>·feature.·Pull·request·courtesy
3866 Simon·Schiele.</p>3866 Simon·Schiele.</p>
3867 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/8905">#8905</a></p>3867 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/8905">#8905</a></p>
3868 </p>3868 </p>
3869 </li>3869 </li>
3870 <li><p·class="caption"·id="change-2.0.0b4-3"><span·class="target"·id="change-07f17a72e4306f956d2c45a0a711d34c"><strong>[orm]·[performance]·[bug]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-07f17a72e4306f956d2c45a0a711d34c">¶</a></span><p>Additional·performance·enhancements·within·ORM-enabled·SQL·statements, 
3871 specifically·targeting·callcounts·within·the·construction·of·ORM 
3872 statements,·using·combinations·of·<a·class="reference·internal"·href="../orm/queryguide/api.html#sqlalchemy.orm.aliased"·title="sqlalchemy.orm.aliased"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">aliased()</span></code></a>·with 
3873 <a·class="reference·internal"·href="../core/selectable.html#sqlalchemy.sql.expression.union"·title="sqlalchemy.sql.expression.union"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">union()</span></code></a>·and·similar·“compound”·constructs,·in·addition·to·direct 
3874 performance·improvements·to·the·<code·class="docutils·literal·notranslate"><span·class="pre">corresponding_column()</span></code>·internal·method 
3875 that·is·used·heavily·by·the·ORM·by·constructs·like·<a·class="reference·internal"·href="../orm/queryguide/api.html#sqlalchemy.orm.aliased"·title="sqlalchemy.orm.aliased"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">aliased()</span></code></a>·and 
3876 similar.</p> 
3877 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/8796">#8796</a></p> 
3878 </p> 
3879 </li> 
3880 <li><p·class="caption"·id="change-2.0.0b4-4"><span·class="target"·id="change-36bb3ef310ce109a6974abb1f01249b5"><strong>[orm]·[bug]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-36bb3ef310ce109a6974abb1f01249b5">¶</a></span><p>Fixed·issue·where·use·of·an·unknown·datatype·within·a·<a·class="reference·internal"·href="../orm/internals.html#sqlalchemy.orm.Mapped"·title="sqlalchemy.orm.Mapped"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Mapped</span></code></a>3870 <li><p·class="caption"·id="change-2.0.0b4-3"><span·class="target"·id="change-36bb3ef310ce109a6974abb1f01249b5"><strong>[orm]·[bug]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-36bb3ef310ce109a6974abb1f01249b5">¶</a></span><p>Fixed·issue·where·use·of·an·unknown·datatype·within·a·<a·class="reference·internal"·href="../orm/internals.html#sqlalchemy.orm.Mapped"·title="sqlalchemy.orm.Mapped"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Mapped</span></code></a>
3881 annotation·for·a·column-based·attribute·would·silently·fail·to·map·the3871 annotation·for·a·column-based·attribute·would·silently·fail·to·map·the
3882 attribute,·rather·than·reporting·an·exception;·an·informative·exception3872 attribute,·rather·than·reporting·an·exception;·an·informative·exception
3883 message·is·now·raised.</p>3873 message·is·now·raised.</p>
3884 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/8888">#8888</a></p>3874 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/8888">#8888</a></p>
3885 </p>3875 </p>
3886 </li>3876 </li>
3887 <li><p·class="caption"·id="change-2.0.0b4-5"><span·class="target"·id="change-8f97eef21ad80d54b13f789e3be204fc"><strong>[orm]·[bug]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-8f97eef21ad80d54b13f789e3be204fc">¶</a></span><p>Fixed·a·suite·of·issues·involving·<a·class="reference·internal"·href="../orm/internals.html#sqlalchemy.orm.Mapped"·title="sqlalchemy.orm.Mapped"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Mapped</span></code></a>·use·with·dictionary3877 <li><p·class="caption"·id="change-2.0.0b4-4"><span·class="target"·id="change-8f97eef21ad80d54b13f789e3be204fc"><strong>[orm]·[bug]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-8f97eef21ad80d54b13f789e3be204fc">¶</a></span><p>Fixed·a·suite·of·issues·involving·<a·class="reference·internal"·href="../orm/internals.html#sqlalchemy.orm.Mapped"·title="sqlalchemy.orm.Mapped"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Mapped</span></code></a>·use·with·dictionary
3888 types,·such·as·<code·class="docutils·literal·notranslate"><span·class="pre">Mapped[Dict[str,</span>·<span·class="pre">str]</span>·<span·class="pre">|</span>·<span·class="pre">None]</span></code>,·would·not·be·correctly3878 types,·such·as·<code·class="docutils·literal·notranslate"><span·class="pre">Mapped[Dict[str,</span>·<span·class="pre">str]</span>·<span·class="pre">|</span>·<span·class="pre">None]</span></code>,·would·not·be·correctly
3889 interpreted·in·Declarative·ORM·mappings.·Support·to·correctly3879 interpreted·in·Declarative·ORM·mappings.·Support·to·correctly
3890 “de-optionalize”·this·type·including·for·lookup·in·<code·class="docutils·literal·notranslate"><span·class="pre">type_annotation_map</span></code>3880 “de-optionalize”·this·type·including·for·lookup·in·<code·class="docutils·literal·notranslate"><span·class="pre">type_annotation_map</span></code>
3891 has·been·fixed.</p>3881 has·been·fixed.</p>
3892 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/8777">#8777</a></p>3882 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/8777">#8777</a></p>
3893 </p>3883 </p>
3894 </li>3884 </li>
 3885 <li><p·class="caption"·id="change-2.0.0b4-5"><span·class="target"·id="change-07f17a72e4306f956d2c45a0a711d34c"><strong>[orm]·[bug]·[performance]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-07f17a72e4306f956d2c45a0a711d34c">¶</a></span><p>Additional·performance·enhancements·within·ORM-enabled·SQL·statements,
 3886 specifically·targeting·callcounts·within·the·construction·of·ORM
 3887 statements,·using·combinations·of·<a·class="reference·internal"·href="../orm/queryguide/api.html#sqlalchemy.orm.aliased"·title="sqlalchemy.orm.aliased"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">aliased()</span></code></a>·with
 3888 <a·class="reference·internal"·href="../core/selectable.html#sqlalchemy.sql.expression.union"·title="sqlalchemy.sql.expression.union"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">union()</span></code></a>·and·similar·“compound”·constructs,·in·addition·to·direct
 3889 performance·improvements·to·the·<code·class="docutils·literal·notranslate"><span·class="pre">corresponding_column()</span></code>·internal·method
 3890 that·is·used·heavily·by·the·ORM·by·constructs·like·<a·class="reference·internal"·href="../orm/queryguide/api.html#sqlalchemy.orm.aliased"·title="sqlalchemy.orm.aliased"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">aliased()</span></code></a>·and
 3891 similar.</p>
 3892 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/8796">#8796</a></p>
 3893 </p>
 3894 </li>
3895 <li><p·class="caption"·id="change-2.0.0b4-6"><span·class="target"·id="change-e02cade6952e8afe79edf480a3932a25"><strong>[orm]·[bug]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-e02cade6952e8afe79edf480a3932a25">¶</a></span><p>Fixed·bug·in·<a·class="reference·internal"·href="../orm/dataclasses.html#orm-declarative-native-dataclasses"><span·class="std·std-ref">Declarative·Dataclass·Mapping</span></a>·feature·where·using3895 <li><p·class="caption"·id="change-2.0.0b4-6"><span·class="target"·id="change-e02cade6952e8afe79edf480a3932a25"><strong>[orm]·[bug]</strong>·<a·class="changelog-reference·headerlink·reference·internal"·href="#change-e02cade6952e8afe79edf480a3932a25">¶</a></span><p>Fixed·bug·in·<a·class="reference·internal"·href="../orm/dataclasses.html#orm-declarative-native-dataclasses"><span·class="std·std-ref">Declarative·Dataclass·Mapping</span></a>·feature·where·using
3896 plain·dataclass·fields·with·the·<code·class="docutils·literal·notranslate"><span·class="pre">__allow_unmapped__</span></code>·directive·in·a3896 plain·dataclass·fields·with·the·<code·class="docutils·literal·notranslate"><span·class="pre">__allow_unmapped__</span></code>·directive·in·a
3897 mapping·would·not·create·a·dataclass·with·the·correct·class-level·state·for3897 mapping·would·not·create·a·dataclass·with·the·correct·class-level·state·for
3898 those·fields,·copying·the·raw·<code·class="docutils·literal·notranslate"><span·class="pre">Field</span></code>·object·to·the·class·inappropriately3898 those·fields,·copying·the·raw·<code·class="docutils·literal·notranslate"><span·class="pre">Field</span></code>·object·to·the·class·inappropriately
3899 after·dataclasses·itself·had·replaced·the·<code·class="docutils·literal·notranslate"><span·class="pre">Field</span></code>·object·with·the3899 after·dataclasses·itself·had·replaced·the·<code·class="docutils·literal·notranslate"><span·class="pre">Field</span></code>·object·with·the
3900 class-level·default·value.</p>3900 class-level·default·value.</p>
3901 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/8880">#8880</a></p>3901 <p>References:·<a·class="reference·external"·href="https://www.sqlalchemy.org/trac/ticket/8880">#8880</a></p>
7.61 KB
html2text {}
    
Offset 2580, 33 lines modifiedOffset 2580, 33 lines modified
2580 References:·_\x8#_\x88_\x88_\x85_\x892580 References:·_\x8#_\x88_\x88_\x85_\x89
2581 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[u\x8us\x8se\x8ec\x8ca\x8as\x8se\x8e]\x8]·_\x82581 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[u\x8us\x8se\x8ec\x8ca\x8as\x8se\x8e]\x8]·_\x8
2582 Added·_\x8m_\x8a_\x8p_\x8p_\x8e_\x8d_\x8__\x8c_\x8o_\x8l_\x8u_\x8m_\x8n_\x8._\x8c_\x8o_\x8m_\x8p_\x8a_\x8r_\x8e·parameter·to·relevant·ORM·attribute·constructs2582 Added·_\x8m_\x8a_\x8p_\x8p_\x8e_\x8d_\x8__\x8c_\x8o_\x8l_\x8u_\x8m_\x8n_\x8._\x8c_\x8o_\x8m_\x8p_\x8a_\x8r_\x8e·parameter·to·relevant·ORM·attribute·constructs
2583 including·_\x8m_\x8a_\x8p_\x8p_\x8e_\x8d_\x8__\x8c_\x8o_\x8l_\x8u_\x8m_\x8n_\x8(_\x8),·_\x8r_\x8e_\x8l_\x8a_\x8t_\x8i_\x8o_\x8n_\x8s_\x8h_\x8i_\x8p_\x8(_\x8)·etc.·to·provide·for·the·Python2583 including·_\x8m_\x8a_\x8p_\x8p_\x8e_\x8d_\x8__\x8c_\x8o_\x8l_\x8u_\x8m_\x8n_\x8(_\x8),·_\x8r_\x8e_\x8l_\x8a_\x8t_\x8i_\x8o_\x8n_\x8s_\x8h_\x8i_\x8p_\x8(_\x8)·etc.·to·provide·for·the·Python
2584 dataclasses·compare·parameter·on·field(),·when·using·the·_\x8D_\x8e_\x8c_\x8l_\x8a_\x8r_\x8a_\x8t_\x8i_\x8v_\x8e_\x8·_\x8D_\x8a_\x8t_\x8a_\x8c_\x8l_\x8a_\x8s_\x8s2584 dataclasses·compare·parameter·on·field(),·when·using·the·_\x8D_\x8e_\x8c_\x8l_\x8a_\x8r_\x8a_\x8t_\x8i_\x8v_\x8e_\x8·_\x8D_\x8a_\x8t_\x8a_\x8c_\x8l_\x8a_\x8s_\x8s
2585 _\x8M_\x8a_\x8p_\x8p_\x8i_\x8n_\x8g·feature.·Pull·request·courtesy·Simon·Schiele.2585 _\x8M_\x8a_\x8p_\x8p_\x8i_\x8n_\x8g·feature.·Pull·request·courtesy·Simon·Schiele.
2586 References:·_\x8#_\x88_\x89_\x80_\x852586 References:·_\x8#_\x88_\x89_\x80_\x85
2587 [\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 
2588 Additional·performance·enhancements·within·ORM-enabled·SQL·statements, 
2589 specifically·targeting·callcounts·within·the·construction·of·ORM·statements, 
2590 using·combinations·of·_\x8a_\x8l_\x8i_\x8a_\x8s_\x8e_\x8d_\x8(_\x8)·with·_\x8u_\x8n_\x8i_\x8o_\x8n_\x8(_\x8)·and·similar·“compound”·constructs, 
2591 in·addition·to·direct·performance·improvements·to·the·corresponding_column() 
2592 internal·method·that·is·used·heavily·by·the·ORM·by·constructs·like·_\x8a_\x8l_\x8i_\x8a_\x8s_\x8e_\x8d_\x8(_\x8) 
2593 and·similar. 
2594 References:·_\x8#_\x88_\x87_\x89_\x86 
2595 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x82587 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8
2596 Fixed·issue·where·use·of·an·unknown·datatype·within·a·_\x8M_\x8a_\x8p_\x8p_\x8e_\x8d·annotation·for·a2588 Fixed·issue·where·use·of·an·unknown·datatype·within·a·_\x8M_\x8a_\x8p_\x8p_\x8e_\x8d·annotation·for·a
2597 column-based·attribute·would·silently·fail·to·map·the·attribute,·rather·than2589 column-based·attribute·would·silently·fail·to·map·the·attribute,·rather·than
2598 reporting·an·exception;·an·informative·exception·message·is·now·raised.2590 reporting·an·exception;·an·informative·exception·message·is·now·raised.
2599 References:·_\x8#_\x88_\x88_\x88_\x882591 References:·_\x8#_\x88_\x88_\x88_\x88
2600 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x82592 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8
2601 Fixed·a·suite·of·issues·involving·_\x8M_\x8a_\x8p_\x8p_\x8e_\x8d·use·with·dictionary·types,·such·as2593 Fixed·a·suite·of·issues·involving·_\x8M_\x8a_\x8p_\x8p_\x8e_\x8d·use·with·dictionary·types,·such·as
2602 Mapped[Dict[str,·str]·|·None],·would·not·be·correctly·interpreted·in2594 Mapped[Dict[str,·str]·|·None],·would·not·be·correctly·interpreted·in
2603 Declarative·ORM·mappings.·Support·to·correctly·“de-optionalize”·this·type2595 Declarative·ORM·mappings.·Support·to·correctly·“de-optionalize”·this·type
2604 including·for·lookup·in·type_annotation_map·has·been·fixed.2596 including·for·lookup·in·type_annotation_map·has·been·fixed.
2605 References:·_\x8#_\x88_\x87_\x87_\x872597 References:·_\x8#_\x88_\x87_\x87_\x87
 2598 [\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
 2599 Additional·performance·enhancements·within·ORM-enabled·SQL·statements,
 2600 specifically·targeting·callcounts·within·the·construction·of·ORM·statements,
 2601 using·combinations·of·_\x8a_\x8l_\x8i_\x8a_\x8s_\x8e_\x8d_\x8(_\x8)·with·_\x8u_\x8n_\x8i_\x8o_\x8n_\x8(_\x8)·and·similar·“compound”·constructs,
 2602 in·addition·to·direct·performance·improvements·to·the·corresponding_column()
 2603 internal·method·that·is·used·heavily·by·the·ORM·by·constructs·like·_\x8a_\x8l_\x8i_\x8a_\x8s_\x8e_\x8d_\x8(_\x8)
 2604 and·similar.
 2605 References:·_\x8#_\x88_\x87_\x89_\x86
2606 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x82606 [\x8[o\x8or\x8rm\x8m]\x8]·[\x8[b\x8bu\x8ug\x8g]\x8]·_\x8
2607 Fixed·bug·in·_\x8D_\x8e_\x8c_\x8l_\x8a_\x8r_\x8a_\x8t_\x8i_\x8v_\x8e_\x8·_\x8D_\x8a_\x8t_\x8a_\x8c_\x8l_\x8a_\x8s_\x8s_\x8·_\x8M_\x8a_\x8p_\x8p_\x8i_\x8n_\x8g·feature·where·using·plain·dataclass2607 Fixed·bug·in·_\x8D_\x8e_\x8c_\x8l_\x8a_\x8r_\x8a_\x8t_\x8i_\x8v_\x8e_\x8·_\x8D_\x8a_\x8t_\x8a_\x8c_\x8l_\x8a_\x8s_\x8s_\x8·_\x8M_\x8a_\x8p_\x8p_\x8i_\x8n_\x8g·feature·where·using·plain·dataclass
2608 fields·with·the·__allow_unmapped__·directive·in·a·mapping·would·not·create·a2608 fields·with·the·__allow_unmapped__·directive·in·a·mapping·would·not·create·a
2609 dataclass·with·the·correct·class-level·state·for·those·fields,·copying·the·raw2609 dataclass·with·the·correct·class-level·state·for·those·fields,·copying·the·raw
2610 Field·object·to·the·class·inappropriately·after·dataclasses·itself·had·replaced2610 Field·object·to·the·class·inappropriately·after·dataclasses·itself·had·replaced
2611 the·Field·object·with·the·class-level·default·value.2611 the·Field·object·with·the·class-level·default·value.
2612 References:·_\x8#_\x88_\x88_\x88_\x802612 References:·_\x8#_\x88_\x88_\x88_\x80
43.7 KB
./usr/share/doc/python-sqlalchemy-doc/html/orm/examples.html
Ordering differences only
    
Offset 303, 40 lines modifiedOffset 303, 40 lines modified
303 where·an·intermediary·class·mediates·the·relationship·between·two303 where·an·intermediary·class·mediates·the·relationship·between·two
304 classes·that·are·associated·in·a·many-to-many·pattern.</p>304 classes·that·are·associated·in·a·many-to-many·pattern.</p>
305 <p>Listing·of·files:<ul·class="simple">305 <p>Listing·of·files:<ul·class="simple">
306 <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·an306 <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
307 “Order”·and·a·collection·of·“Item”·objects,·associating·a·purchase·price307 “Order”·and·a·collection·of·“Item”·objects,·associating·a·purchase·price
308 with·each·via·an·association·object·called·“OrderItem”</p>308 with·each·via·an·association·object·called·“OrderItem”</p>
309 </p></li>309 </p></li>
 310 <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
 311 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
 312 to·<code·class="docutils·literal·notranslate"><span·class="pre">OrderItem</span></code>·optional.</p>
 313 </p></li>
310 <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·which314 <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
311 illustrates·nesting·of·association·proxies·to·produce·multi-level·Python315 illustrates·nesting·of·association·proxies·to·produce·multi-level·Python
312 collections,·in·this·case·a·dictionary·with·string·keys·and·sets·of·integers316 collections,·in·this·case·a·dictionary·with·string·keys·and·sets·of·integers
313 as·values,·which·conceal·the·underlying·mapped·classes.</p>317 as·values,·which·conceal·the·underlying·mapped·classes.</p>
314 </p></li>318 </p></li>
315 <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 
316 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 
317 to·<code·class="docutils·literal·notranslate"><span·class="pre">OrderItem</span></code>·optional.</p> 
318 </p></li> 
319 </ul>319 </ul>
320 </p>320 </p>
321 </section>321 </section>
322 <section·id="module-examples.asyncio">322 <section·id="module-examples.asyncio">
323 <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>323 <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>
324 <p>Examples·illustrating·the·asyncio·engine·feature·of·SQLAlchemy.</p>324 <p>Examples·illustrating·the·asyncio·engine·feature·of·SQLAlchemy.</p>
325 <p>Listing·of·files:<ul·class="simple">325 <p>Listing·of·files:<ul·class="simple">
326 <li><p><p><a·class="reference·external"·href="../_modules/examples/asyncio/async_orm.html">async_orm.py</a>·-·Illustrates·use·of·the·<code·class="docutils·literal·notranslate"><span·class="pre">sqlalchemy.ext.asyncio.AsyncSession</span></code>·object 
327 for·asynchronous·ORM·use.</p>326 <li><p><p><a·class="reference·external"·href="../_modules/examples/asyncio/async_orm_writeonly.html">async_orm_writeonly.py</a>·-·Illustrates·using·<strong>write·only·relationships</strong>·for·simpler·handling
 327 of·ORM·collections·under·asyncio.</p>
328 </p></li>328 </p></li>
329 <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·object329 <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
330 for·asynchronous·ORM·use,·including·the·optional·run_sync()·method.</p>330 for·asynchronous·ORM·use,·including·the·optional·run_sync()·method.</p>
331 </p></li>331 </p></li>
332 <li><p><p><a·class="reference·external"·href="../_modules/examples/asyncio/basic.html">basic.py</a>·-·Illustrates·the·asyncio·engine·/·connection·interface.</p>332 <li><p><p><a·class="reference·external"·href="../_modules/examples/asyncio/basic.html">basic.py</a>·-·Illustrates·the·asyncio·engine·/·connection·interface.</p>
333 </p></li>333 </p></li>
334 <li><p><p><a·class="reference·external"·href="../_modules/examples/asyncio/async_orm_writeonly.html">async_orm_writeonly.py</a>·-·Illustrates·using·<strong>write·only·relationships</strong>·for·simpler·handling 
335 of·ORM·collections·under·asyncio.</p>334 <li><p><p><a·class="reference·external"·href="../_modules/examples/asyncio/async_orm.html">async_orm.py</a>·-·Illustrates·use·of·the·<code·class="docutils·literal·notranslate"><span·class="pre">sqlalchemy.ext.asyncio.AsyncSession</span></code>·object
 335 for·asynchronous·ORM·use.</p>
336 </p></li>336 </p></li>
337 <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>337 <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>
338 along·many·asyncio·database·connections,·merging·ORM·results·into·a·single338 along·many·asyncio·database·connections,·merging·ORM·results·into·a·single
339 <code·class="docutils·literal·notranslate"><span·class="pre">AsyncSession</span></code>.</p>339 <code·class="docutils·literal·notranslate"><span·class="pre">AsyncSession</span></code>.</p>
340 </p></li>340 </p></li>
341 </ul>341 </ul>
342 </p>342 </p>
18.6 KB
html2text {}
    
Offset 99, 31 lines modifiedOffset 99, 31 lines modified
99 Examples·illustrating·the·usage·of·the·“association·object”·pattern,·where·an99 Examples·illustrating·the·usage·of·the·“association·object”·pattern,·where·an
100 intermediary·class·mediates·the·relationship·between·two·classes·that·are100 intermediary·class·mediates·the·relationship·between·two·classes·that·are
101 associated·in·a·many-to-many·pattern.101 associated·in·a·many-to-many·pattern.
102 Listing·of·files:102 Listing·of·files:
103 ····*·_\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·an103 ····*·_\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
104 ······“Order”·and·a·collection·of·“Item”·objects,·associating·a·purchase·price104 ······“Order”·and·a·collection·of·“Item”·objects,·associating·a·purchase·price
105 ······with·each·via·an·association·object·called·“OrderItem”105 ······with·each·via·an·association·object·called·“OrderItem”
 106 _\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
 107 _\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
 108 optional.
106 _\x8d_\x8i_\x8c_\x8t_\x8__\x8o_\x8f_\x8__\x8s_\x8e_\x8t_\x8s_\x8__\x8w_\x8i_\x8t_\x8h_\x8__\x8d_\x8e_\x8f_\x8a_\x8u_\x8l_\x8t_\x8._\x8p_\x8y·-·An·advanced·association·proxy·example·which109 _\x8d_\x8i_\x8c_\x8t_\x8__\x8o_\x8f_\x8__\x8s_\x8e_\x8t_\x8s_\x8__\x8w_\x8i_\x8t_\x8h_\x8__\x8d_\x8e_\x8f_\x8a_\x8u_\x8l_\x8t_\x8._\x8p_\x8y·-·An·advanced·association·proxy·example·which
107 illustrates·nesting·of·association·proxies·to·produce·multi-level·Python110 illustrates·nesting·of·association·proxies·to·produce·multi-level·Python
108 collections,·in·this·case·a·dictionary·with·string·keys·and·sets·of·integers·as111 collections,·in·this·case·a·dictionary·with·string·keys·and·sets·of·integers·as
109 values,·which·conceal·the·underlying·mapped·classes.112 values,·which·conceal·the·underlying·mapped·classes.
110 _\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 
111 _\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 
112 optional. 
113 *\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*113 *\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*
114 Examples·illustrating·the·asyncio·engine·feature·of·SQLAlchemy.114 Examples·illustrating·the·asyncio·engine·feature·of·SQLAlchemy.
115 Listing·of·files:115 Listing·of·files:
116 ····*·_\x8a_\x8s_\x8y_\x8n_\x8c_\x8__\x8o_\x8r_\x8m_\x8._\x8p_\x8y·-·Illustrates·use·of·the·sqlalchemy.ext.asyncio.AsyncSession 
117 ······object·for·asynchronous·ORM·use.116 ····*·_.a_.s_.y_.n_.c_.__.o_.r_.m_.__.w_.r_.i_.t_.e_.o_.n_.l_.y_.._.p_.y·-·Illustrates·using·w.wr.ri.it.te.e·o.on.nl.ly.y·r.re.el.la.at.ti.io.on.ns.sh.hi.ip.ps.s·for
 117 ······simpler·handling·of·ORM·collections·under·asyncio.
118 _\x8g_\x8r_\x8e_\x8e_\x8n_\x8l_\x8e_\x8t_\x8__\x8o_\x8r_\x8m_\x8._\x8p_\x8y·-·Illustrates·use·of·the·sqlalchemy.ext.asyncio.AsyncSession118 _\x8g_\x8r_\x8e_\x8e_\x8n_\x8l_\x8e_\x8t_\x8__\x8o_\x8r_\x8m_\x8._\x8p_\x8y·-·Illustrates·use·of·the·sqlalchemy.ext.asyncio.AsyncSession
119 object·for·asynchronous·ORM·use,·including·the·optional·run_sync()·method.119 object·for·asynchronous·ORM·use,·including·the·optional·run_sync()·method.
120 _\x8b_\x8a_\x8s_\x8i_\x8c_\x8._\x8p_\x8y·-·Illustrates·the·asyncio·engine·/·connection·interface.120 _\x8b_\x8a_\x8s_\x8i_\x8c_\x8._\x8p_\x8y·-·Illustrates·the·asyncio·engine·/·connection·interface.
121 _\x8a_\x8s_\x8y_\x8n_\x8c_\x8__\x8o_\x8r_\x8m_\x8__\x8w_\x8r_\x8i_\x8t_\x8e_\x8o_\x8n_\x8l_\x8y_\x8._\x8p_\x8y·-·Illustrates·using·w\x8wr\x8ri\x8it\x8te\x8e·o\x8on\x8nl\x8ly\x8y·r\x8re\x8el\x8la\x8at\x8ti\x8io\x8on\x8ns\x8sh\x8hi\x8ip\x8ps\x8s·for·simpler 
122 handling·of·ORM·collections·under·asyncio.121 _.a_.s_.y_.n_.c_.__.o_.r_.m_.._.p_.y·-·Illustrates·use·of·the·sqlalchemy.ext.asyncio.AsyncSession
 122 object·for·asynchronous·ORM·use.
123 _\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·concurrently123 _\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·concurrently
124 using·asyncio.gather()·along·many·asyncio·database·connections,·merging·ORM124 using·asyncio.gather()·along·many·asyncio·database·connections,·merging·ORM
125 results·into·a·single·AsyncSession.125 results·into·a·single·AsyncSession.
126 *\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*126 *\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*
127 An·example·of·persistence·for·a·directed·graph·structure.·The·graph·is·stored127 An·example·of·persistence·for·a·directed·graph·structure.·The·graph·is·stored
128 as·a·collection·of·edges,·each·referencing·both·a·“lower”·and·an·“upper”·node128 as·a·collection·of·edges,·each·referencing·both·a·“lower”·and·an·“upper”·node
129 in·a·table·of·nodes.·Basic·persistence·and·querying·for·lower-·and·upper-129 in·a·table·of·nodes.·Basic·persistence·and·querying·for·lower-·and·upper-
5.18 KB
./usr/share/doc/python-sqlalchemy-doc/html/searchindex.js
5.07 KB
js-beautify {}
    
Offset 7084, 17 lines modifiedOffset 7084, 17 lines modified
7084 ········"4138":·12,7084 ········"4138":·12,
7085 ········"5265":·12,7085 ········"5265":·12,
7086 ········"5266":·12,7086 ········"5266":·12,
7087 ········"td":·[12,·64],7087 ········"td":·[12,·64],
7088 ········"protocol":·[12,·18,·50,·53,·57,·61,·66,·67,·80,·91,·103,·134,·136],7088 ········"protocol":·[12,·18,·50,·53,·57,·61,·66,·67,·80,·91,·103,·134,·136],
7089 ········"5255":·12,7089 ········"5255":·12,
7090 ········"5271":·12,7090 ········"5271":·12,
7091 ········"5314":·12, 
7092 ········"outputtyp":·12,7091 ········"outputtyp":·12,
7093 ········"5246":·12,7092 ········"5246":·12,
 7093 ········"5314":·12,
7094 ········"5278":·12,7094 ········"5278":·12,
7095 ········"planner":·[12,·24],7095 ········"planner":·[12,·24],
7096 ········"5162":·12,7096 ········"5162":·12,
7097 ········"slot":·[12,·53,·58,·87,·92],7097 ········"slot":·[12,·53,·58,·87,·92],
7098 ········"5228":·12,7098 ········"5228":·12,
7099 ········"5210":·12,7099 ········"5210":·12,
7100 ········"eval":·[12,·75,·84,·125,·156],7100 ········"eval":·[12,·75,·84,·125,·156],