<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">I agree too - I also dont like that we get an FID column when we import another table that already has an id column….all sorts of chaos ensues….<div class=""><br class=""></div><div class=""><a href="https://github.com/qgis/QGIS/issues/30697" class="">https://github.com/qgis/QGIS/issues/30697</a></div><div class=""><br class=""></div><div class="">Regards</div><div class=""><br class=""></div><div class="">Tim<br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On 19 Mar 2020, at 17:00, René-Luc Dhont <<a href="mailto:rldhont@gmail.com" class="">rldhont@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class="">
  
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" class="">
  
  <div class="">
    I agree, so in my algorithms working with geopackage I always
    redefined  FID with <br class="">
    <br class="">
    options = QgsVectorFileWriter.SaveVectorOptions()<br class="">
    options.layerOptions = ['FID=id']<br class="">
    <br class="">
    For me it is like a primary key in PostGIS, I need to manage it.<br class="">
    Other point, Feature ID in QGIS is still a short integer.<br class="">
    <br class="">
    Regards,<br class="">
    René-Luc<br class="">
    <br class="">
    <div class="moz-cite-prefix">Le 19/03/2020 à 10:28, Régis Haubourg a
      écrit :<br class="">
    </div>
    <blockquote type="cite" cite="mid:CABgOYCcm6P0ND+zgBq7-K-a39JCyg7cMRjy8Y=2hs88_1N+_RA@mail.gmail.com" class="">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8" class="">
      <div dir="auto" class="">+1000. I was so relieved of the fid/oid/mapinfo_id
        when QGIS arrived and allowed business logic primary keys. 
        <div dir="auto" class=""><br class="">
        </div>
      </div>
      <br class="">
      <div class="gmail_quote">
        <div dir="ltr" class="gmail_attr">Le jeu. 19 mars 2020 à 07:52,
          Nathan Woodrow <<a href="mailto:madmanwoo@gmail.com" moz-do-not-send="true" class="">madmanwoo@gmail.com</a>> a écrit :<br class="">
        </div>
        <blockquote class="gmail_quote" style="margin:0 0 0
          .8ex;border-left:1px #ccc solid;padding-left:1ex">
          <div dir="ltr" class="">I agree.  
            <div class=""><br class="">
            </div>
            <div class="">If there is an ID that is used internally as a
              unique primary key it should never be shown to the user.
              It should not be expected to be edited outside of the
              provider's control or be stable between edits. </div>
            <div class=""><br class="">
            </div>
            <div class="">If you need a stable ID for reference you should make
              your own {{insert rant about people wanting to use
              increating ints as a reference ID}} </div>
          </div>
          <br class="">
          <div class="gmail_quote">
            <div dir="ltr" class="gmail_attr">On Thu, Mar 19, 2020 at
              4:04 PM Nyall Dawson <<a href="mailto:nyall.dawson@gmail.com" target="_blank" rel="noreferrer" moz-do-not-send="true" class="">nyall.dawson@gmail.com</a>>
              wrote:<br class="">
            </div>
            <blockquote class="gmail_quote" style="margin:0px 0px 0px
              0.8ex;border-left:1px solid
              rgb(204,204,204);padding-left:1ex">Hi list,<br class="">
              <br class="">
              Just wondering what everyone's thoughts are about
              geopackage FID<br class="">
              columns. Personally, I find them an absolute nightmare to
              deal with,<br class="">
              resulting in annoying (and dangerous) issues when trying
              to save<br class="">
              geopackage edits, such as<br class="">
              - field type issues: converting certain formats to
              geopackage fails,<br class="">
              because existing fields with name "fid" are of an
              incompatible type<br class="">
              with geopackage. Solution: manually uncheck the "fid"
              field from the<br class="">
              "save as" dialog.<br class="">
              - unique constraint violations: we've mostly fixed this in
              processing,<br class="">
              but it's still unfortunately really common to get failures
              when saving<br class="">
              edits to geopackage because some operation has resulted in
              duplicate<br class="">
              fids. This can be a nightmare to fix, if it's even
              possible to do so.<br class="">
              <br class="">
              I personally HATE HATE HATE these columns, and would
              rather I never<br class="">
              saw them ever again. Does anyone else feel the same? If
              so, could we<br class="">
              potentially just permanently hide these columns from QGIS
              and avoid<br class="">
              all these dangerous issues for users?<br class="">
              <br class="">
              Nyall<br class="">
              _______________________________________________<br class="">
              QGIS-Developer mailing list<br class="">
              <a href="mailto:QGIS-Developer@lists.osgeo.org" target="_blank" rel="noreferrer" moz-do-not-send="true" class="">QGIS-Developer@lists.osgeo.org</a><br class="">
              List info: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer noreferrer" target="_blank" moz-do-not-send="true" class="">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br class="">
              Unsubscribe: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer noreferrer" target="_blank" moz-do-not-send="true" class="">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a></blockquote>
          </div>
          _______________________________________________<br class="">
          QGIS-Developer mailing list<br class="">
          <a href="mailto:QGIS-Developer@lists.osgeo.org" target="_blank" rel="noreferrer" moz-do-not-send="true" class="">QGIS-Developer@lists.osgeo.org</a><br class="">
          List info: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer noreferrer" target="_blank" moz-do-not-send="true" class="">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br class="">
          Unsubscribe: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer noreferrer" target="_blank" moz-do-not-send="true" class="">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a></blockquote>
      </div>
      <br class="">
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
QGIS-Developer mailing list
<a class="moz-txt-link-abbreviated" href="mailto:QGIS-Developer@lists.osgeo.org">QGIS-Developer@lists.osgeo.org</a>
List info: <a class="moz-txt-link-freetext" href="https://lists.osgeo.org/mailman/listinfo/qgis-developer">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a>
Unsubscribe: <a class="moz-txt-link-freetext" href="https://lists.osgeo.org/mailman/listinfo/qgis-developer">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a></pre>
    </blockquote>
    <br class="">
  </div>

_______________________________________________<br class="">QGIS-Developer mailing list<br class=""><a href="mailto:QGIS-Developer@lists.osgeo.org" class="">QGIS-Developer@lists.osgeo.org</a><br class="">List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer<br class="">Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer</div></blockquote></div><br class=""><div class="">
<div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-position: normal; font-variant-caps: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-weight: normal; letter-spacing: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; line-height: normal; text-align: center;" class=""><span>—</span></div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-position: normal; font-variant-caps: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; letter-spacing: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; line-height: normal; text-align: center;" class=""><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0); min-height: 14px;" class=""><br class=""></div><br class="Apple-interchange-newline" style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;"><span style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;"><span><span><span><span><span><span><span><span><span><span><span><img apple-inline="yes" id="2F58D6A0-789B-4CD7-A57D-3C6BA88F8800" src="cid:1A5DF6DE-E302-4C28-BFBD-29663CBF1351" class=""></span><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0); min-height: 14px;" class=""><br class="Apple-interchange-newline"><br class="Apple-interchange-newline"><br class="Apple-interchange-newline"><br class="Apple-interchange-newline"><br class=""></div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0); min-height: 14px;" class=""><br class=""></div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class=""><b class="">Tim Sutton</b></div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0); min-height: 14px;" class=""><br class=""></div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class=""><b class="">Co-founder:</b><span class="Apple-converted-space"> </span>Kartoza</div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class=""><b class="">Ex Project chair:</b><span style="font-weight: normal;" class=""><span class="Apple-converted-space"> </span><a href="http://QGIS.org" class="">QGIS.org</a></span></div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0); min-height: 14px;" class=""><br class=""></div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class="">Visit <a href="http://kartoza.com/" class=""><span style="-webkit-text-stroke-color: rgb(71, 135, 255);" class="">http://kartoza.com</span></a> to find out about open source:</div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0); min-height: 14px;" class=""><br class=""></div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class="">Desktop GIS programming services</div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class="">Geospatial web development</div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class="">GIS Training</div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class="">Consulting Services</div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0); min-height: 14px;" class=""><br class=""></div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class=""><b class="">Skype</b>: timlinux </div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class=""><b class="">IRC:</b><span class="Apple-converted-space"> </span>timlinux on #qgis at <a href="http://freenode.net" class="">freenode.net</a></div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class=""><br class=""></div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; text-decoration: none; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class=""><span style="caret-color: rgb(102, 106, 115); color: rgb(102, 106, 115); font-family: "Proxima Nova", sans-serif; font-size: 14px; text-align: left; background-color: rgb(255, 255, 255);" class="">I'd love to connect. </span><a target="_blank" class="t-quick-start-share-link" href="https://calendly.com/timlinux" style="color: rgb(0, 162, 255); text-decoration: none; cursor: pointer; font-family: "Proxima Nova", sans-serif; font-size: 14px; text-align: left;">Here's my calendar link</a><span style="caret-color: rgb(102, 106, 115); color: rgb(102, 106, 115); font-family: "Proxima Nova", sans-serif; font-size: 14px; text-align: left; background-color: rgb(255, 255, 255);" class=""> to make finding time easy.</span></div>
</span></span></span></span></span></span></span></span></span></span></span></div>
</div><br class=""></div></body></html>