If you can change the API so "correctly" written apps don't break and "poorly" 
written ones work too...yeah rah...
 
The only thing I would ask is a clear example of what "correctly" written 
is....does that exist?  I can't find it in the documentataion.  Plus, a clear 
example of "poorly" written...but stil works due to 3.7.5 changes....so that 
smart app developers can see what they probably did and must do in the 
future...and how to maintain compatibility across versions.
 
The "Simple C program" is wholly inadequate to show anybody how to do anything 
correctly.  Perhaps a more complex example that shows complete usage is what is 
needed for developers that don't read every line of the documentaion and 
instead rely on other poorly written examples to learn...
 
An example of confusing documentation...

SQLITE_DONE 
<https://legacy2.ngc.com/Exchange/Michael.Black2/Drafts/c3ref/c_abort.html>  
means that the statement has finished executing successfully. sqlite3_step() 
should not be called again on this virtual machine without first calling 
sqlite3_reset() 
<https://legacy2.ngc.com/Exchange/Michael.Black2/Drafts/c3ref/reset.html>  to 
reset the virtual machine back to its initial state.

I think what's meant here is that you can't call the SAME stmt again without 
sqlite3_reset() -- but it doesn't say that...no doubt obvioius to the 
author...makes it sound like if I create a new stmt I have to call it too...

A more complex example would clarify...people take the least painful way to do 
things...and poorly written examples are the bane of good programming...long 
live bubble sort!!

 

 
 
 
Michael D. Black
Senior Scientist
Advanced Analytics Directorate
Northrop Grumman Information Systems
 

________________________________

From: sqlite-users-boun...@sqlite.org on behalf of Richard Hipp
Sent: Tue 1/11/2011 6:15 AM
To: General Discussion of SQLite Database
Subject: EXTERNAL:Re: [sqlite] Propose minor incompatible API change




I don't think I explained the problem clearly.

The proposed change is for the benefit of the applications customers, not
the application developers.

An end user (think: your mom) wants to upgrade her smartphone to the latest
OS release.  That new OS release includes the latest shared library for
SQLite.  But in so doing, some percentage of the apps she has downloaded
cease to work.  Sure, the problem really is that the apps were incorrectly
coded.  But does your mom really care about that?  They worked before.  Do
we really want thousand, perhaps millions, of moms screaming that SQLite
broke their phone when they upgraded?

--
D. Richard Hipp
d...@sqlite.org
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to