I'm not sure the created field is never cleaned off. Like possibly during 
export/import procedures. Or when packed/unpacked from a plugin. 
Maybe use a separate id field just to be sure. 

On Thursday, April 30, 2020 at 9:52:28 AM UTC-7, Arlen Beiler wrote:
>
> If I was doing that I would auto assign an integer primary key, but if 
> that's more work you could use the created timestamp. 
>
> On Thu, Apr 30, 2020 at 8:40 AM ludwa6 
>
>> Arlen: storage in a RDBMS (requirement for this application i want to 
>> develop[1]) requires a Primary Key that is both guaranteed unique AND 
>> cannot be changed -but tiddler Title *can* be changed, so that is not a 
>> good candidate, seems to me. The one element of this schema that appears 
>> immutable to me is that "created" date/time stamp, which has 3 digits 
>> beyond minutes (thousandths of a minute, perhaps?), so that is fine-grained 
>> enough to guarantee uniqueness, i guess. 
>>
>> [1] To explain: i need RDBMS storage for this particular application 
>> because i need to correlate tiddlers with records in other tables of the 
>> database that they are meant to document, or otherwise extend. This RDBMS 
>> lies at the heart of a gateway that facilitates data I/O with a set remote 
>> nodes for sensing & control of farm operations -initially a 
>> climate-controlled greenhouse.  The data flowing between nodes in this 
>> environment is structured as a rule, such that humans cannot mess with it. 
>> Yet it is precisely those "messy" human inputs -e.g. observations, photos, 
>> links, questions, etc.- that i aim to capture thru TiddlyWiki.  The real 
>> power of this application will lie in its ability to corrrelate machine 
>> data with user-generated data... And for that, i need both to be stored in 
>> RDBMS (just in case you were wondering why :-)
>>
>>
>> On Thursday, April 30, 2020 at 12:23:00 PM UTC+1, Arlen Beiler wrote:
>>>
>>> Those last lines are a mystery to me. I've never seen them before. I'll 
>>> check make sure I'm not missing anything. 
>>>
>>> The tiddler title is the primary key in Tiddly wiki. I don't really 
>>> think you would need to store it anywhere else though.
>>>
>>> Everything is in flux right now, but hopefully we'll have it mailed down 
>>> soon and then I'll be able to better recommend how to use a database with 
>>> this. But it certainly isn't required. 
>>>
>>> On Thu, Apr 30, 2020, 06:42 ludwa6 <wlud...@gmail.com> wrote:
>>>
>>>> Arlen: Putting your earlier instructions together with Mark's 
>>>> declaration of listener port, i *think* i've got he server running on my 
>>>> Pi 
>>>> server... But in fact i'm still confused about this.  
>>>>
>>>> The UI looks & seems to be performing pretty much like TiddlyWiki 
>>>> single-file version, except that default "Getting Started" tiddler asked 
>>>> me 
>>>> to make & save one, & confirm that it worked... So i did, and now i see it 
>>>> in the file system, inside 'MyNewWikiFolder/tiddlers/ , along with 
>>>> $_StoryList.tid .  I then created a 2nd tiddler, which appeared as a 2nd 
>>>> file in the same directory... So can i safely presume i've got tiddly 
>>>> server working as it should?
>>>>
>>>> Now looking at the schema of these files, it seems pretty simple, i.e.: 
>>>>
>>>>    - created: (date/time stamp in yyyymmddhhmm format, followed by a 
>>>>    3-digit numeric)
>>>>    - modified: (same format as above)
>>>>    - tags: (if any, a horizontal list)
>>>>    - title: (as declared)
>>>>    - type: text/vnd.tiddlywiki
>>>>    - (single line space, followed by...
>>>>    - (full text of tiddler, followed by...
>>>>    - (some 16 lines, blank except for '~' as initial character...
>>>>    - <ikiFolder/tiddlers/(TitleOfTiddler).tid
>>>>    - [noeol] 7L, 132C      7,23      ALL
>>>>
>>>> That last line is most mysterious to me, as i don't know what those 
>>>> codes refer to, nor why there's so many spaces preceding the last 2 
>>>> strings. 
>>>>
>>>> Best candidate for Primary Key here, as far as i can see, would be the 
>>>> first attribute -the "created" date/time stamp- but i don't know how to 
>>>> turn these files into rows in the SQLite database where i want to store 
>>>> the 
>>>> data. From what Tony said, i gather it would involve building a sync 
>>>> module 
>>>> of some sort, but i have no idea how that might be done.  Any prior art, 
>>>> or 
>>>> ideas about this?
>>>>
>>>>
>>>>
>>>> On Wednesday, April 29, 2020 at 7:00:25 PM UTC+1, Arlen Beiler wrote:
>>>>>
>>>>> Sorry, what I said was for tiddly server. What mark said is for tiddly 
>>>>> wiki.
>>>>>
>>>>> On Wed, Apr 29, 2020, 13:56 'Mark S.' via TiddlyWiki <
>>>>> tiddl...@googlegroups.com> wrote:
>>>>>
>>>>>>
>>>>>> The listen command can take a port number. Like
>>>>>>
>>>>>> --listen port=8090
>>>>>>
>>>>>>
>>>>>> On Wednesday, April 29, 2020 at 9:37:36 AM UTC-7, ludwa6 wrote:
>>>>>>>
>>>>>>> Hey Arlen: Great to hear, thanks! 
>>>>>>> So i ran those commands, installed TiddlyServer on my Raspberry Pi 
>>>>>>> gateway... But hit a little snag setting up the listener, in that port 
>>>>>>> :8080 is owned by another application server.  Can't change that for 
>>>>>>> the 
>>>>>>> moment, as it's a service i can't really mess with.  Could talk to that 
>>>>>>> developer about changing the port he's using, i suppose...
>>>>>>>
>>>>>>> But just to see this working, i tried to install on my Mac, but 
>>>>>>> terminal tells me:
>>>>>>>
>>>>>>> -bash: npm: command not found
>>>>>>> Suppose i could use a different package manager, if i knew how (yes, 
>>>>>>> i am a complete unix n00b  =8-(
>>>>>>>
>>>>>>> Will try to bone up on the requisite skills, but any more crib notes 
>>>>>>> would of course be appreciated!
>>>>>>>
>>>>>>> /walt
>>>>>>>
>>>>>>>
>>>>>>> On Wednesday, April 29, 2020 at 3:06:52 PM UTC+1, Arlen Beiler wrote:
>>>>>>>>
>>>>>>>> I have tried doing SQLite but there are some caveats that need to 
>>>>>>>> be accounted for. 
>>>>>>>>
>>>>>>>> What I would recommend you do is use data folders instead of single 
>>>>>>>> file wikis. Data folders store tiddlers in individual text files using 
>>>>>>>> a 
>>>>>>>> custom format that Jeremy came up with. It works very well for text 
>>>>>>>> based 
>>>>>>>> storage solutions like GitHub. I'm actually really surprised no one 
>>>>>>>> mentioned this yet. 
>>>>>>>>
>>>>>>>> To get started, install tiddlywiki globally by running npm install 
>>>>>>>> tiddlywiki -g
>>>>>>>>
>>>>>>>> Next, to create a blank data folder, run tiddlywiki 
>>>>>>>> ./MyNewWikiFolder --init server
>>>>>>>>
>>>>>>>> Then run tiddlywiki ./MyNewWikiFolder --listen
>>>>>>>>
>>>>>>>> Now open your browser to localhost:8080 and start exploring. 
>>>>>>>>
>>>>>>>> TiddlyServer is a good way to load multiple data folders on the 
>>>>>>>> same port. 
>>>>>>>>
>>>>>>>> Hope that helps, 
>>>>>>>> Arlen
>>>>>>>>
>>>>>>>> On Wed, Apr 29, 2020 at 7:52 AM ludwa6 <wlud...@gmail.com> wrote:
>>>>>>>>
>>>>>>>>> Such a wealth of options for Local-First storage have emerged in 
>>>>>>>>> this thread (must say: i'm super impressed with the strength of this 
>>>>>>>>> community i have just joined), i've been able to quickly implement 
>>>>>>>>> the 
>>>>>>>>> simple approach suggested by Jeremy (TW Desktop, + cloud sync to 
>>>>>>>>> Github), 
>>>>>>>>> which is serving me well enough for now. 
>>>>>>>>>
>>>>>>>>> Yet, as i'm fast creating quite a mountain of data in TW, i'm also 
>>>>>>>>> bothered by the growing sense that what i really want at the back end 
>>>>>>>>> of 
>>>>>>>>> this beautiful thing is a database -ideally SQLite, which has all 
>>>>>>>>> that 
>>>>>>>>> local-first/ single-file/ portability goodness of TW, while bringing 
>>>>>>>>> the 
>>>>>>>>> full set of functionalities needed to manage a large database with 
>>>>>>>>> integrity.  With a single SQLite file stored locally and replicated 
>>>>>>>>> to the 
>>>>>>>>> cloud, that gives us a solution that ticks all the boxes in that 
>>>>>>>>> seminal Local-First paper 
>>>>>>>>> <https://www.inkandswitch.com/local-first.html>: Fast, 
>>>>>>>>> Multi-Device, Offline, Collaboration, Longevity, Privacy, 
>>>>>>>>> User-Control.  
>>>>>>>>> Combining this with the power of TW5 interface (really an "interface 
>>>>>>>>> builder for the rest of us," i would call it), minus mess of .html 
>>>>>>>>> backup 
>>>>>>>>> files i've got to keep cleaning off my machine (SQLite has a full 
>>>>>>>>> transactional history, so no need of any backups but that one file, 
>>>>>>>>> replicated to cloud), and that in broad-strokes would be the shape of 
>>>>>>>>> my 
>>>>>>>>> dream machine. 
>>>>>>>>>
>>>>>>>>> So i must ask: has anyone tried using SQLite as storage for a 
>>>>>>>>> TiddlyWiki?  If this is indeed technically feasible, can anyone point 
>>>>>>>>> me to 
>>>>>>>>> prior art on which i might be able to build such a solution?  Though 
>>>>>>>>> i am 
>>>>>>>>> no programmer, i am reasonably comfortable with SQL as a data 
>>>>>>>>> manipulation 
>>>>>>>>> language, if someone can just show me how to get the TW data in there!
>>>>>>>>>
>>>>>>>>> -- 
>>>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>>>> Groups "TiddlyWiki" group.
>>>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>>>> send an email to tiddl...@googlegroups.com.
>>>>>>>>> To view this discussion on the web visit 
>>>>>>>>> https://groups.google.com/d/msgid/tiddlywiki/856ad777-dc63-4491-bd74-c0391c4bf413%40googlegroups.com
>>>>>>>>>  
>>>>>>>>> <https://groups.google.com/d/msgid/tiddlywiki/856ad777-dc63-4491-bd74-c0391c4bf413%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>>>> .
>>>>>>>>>
>>>>>>>> -- 
>>>>>> You received this message because you are subscribed to the Google 
>>>>>> Groups "TiddlyWiki" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>> send an email to tiddl...@googlegroups.com.
>>>>>> To view this discussion on the web visit 
>>>>>> https://groups.google.com/d/msgid/tiddlywiki/9571530e-806f-4a61-ae2f-ef1498d49f7b%40googlegroups.com
>>>>>>  
>>>>>> <https://groups.google.com/d/msgid/tiddlywiki/9571530e-806f-4a61-ae2f-ef1498d49f7b%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>> .
>>>>>>
>>>>> -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "TiddlyWiki" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to tiddl...@googlegroups.com.
>>>> To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/tiddlywiki/e11cd690-1d1b-4ad4-a301-049640052549%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/tiddlywiki/e11cd690-1d1b-4ad4-a301-049640052549%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "TiddlyWiki" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to tiddlywiki+unsubscr...@googlegroups.com.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/tiddlywiki/41b844a9-ec92-48f3-82ba-577224128761%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/tiddlywiki/41b844a9-ec92-48f3-82ba-577224128761%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/816d3c80-be00-4591-8d1a-bf3c40906bcb%40googlegroups.com.

Reply via email to