I am not surprised that many comments show surprised about the column types are flexible by default. I guess most people don’t read the original documentation before starting using it.
This happens because most tutorials do not mention this either. I will not be surprised if most authors of the tutorials don’t know this either.
I did read some webpages on the official website, but I don’t remember seeing this either. It’s possible that I read pass this information but did not pay attention to it.
SQLite's flexible datatype approach is mentioned in "Distinctive Features Of SQLite"[1], "Quirks, Caveats, and Gotchas In SQLite"[2] and detailed in "Datatypes In SQLite"[3].
I find it surprising that apparently many devs use SQLite without knowing any of this. Pretty much the first thing I try to find out about languages or databases new to me that I might want use is the datatype support.
I think many people use SQLite come from analysis/statistics background, not programming background. For them, restrict is the obvious default, so obvious that they never think about the existence of the alternative.
This STRICT feature is a brand new (currently marked as DRAFT) and hopefully scheduled for the next release of SQLite. I believe this document only showed up on the website today.
This happens because most tutorials do not mention this either. I will not be surprised if most authors of the tutorials don’t know this either.
I did read some webpages on the official website, but I don’t remember seeing this either. It’s possible that I read pass this information but did not pay attention to it.