• Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

AltME groups: search

Help · search scripts · search articles · search mailing list

results summary

worldhits
r4wp32
r3wp646
total:678

results window for this page: [start: 101 end: 200]

world-name: r3wp

Group: !AltME ... Discussion about AltME [web-public]
[unknown: 10]:
4-Mar-2006
I wondering for some time now..Why is there NO ALtME-Transport-Protocol 
available?? Is there none or is it simply not yet secure enough to 
give away? Or does it break the ALTME secrets ?...
Group: RAMBO ... The REBOL bug and enhancement database [web-public]
Ashley:
22-May-2005
Tested FTP operations against two of my sites that used to require 
%ftp-patch53.r & "system/schemes/ftp/passive: true" to work ... they 
both work fine now with the new FTP protocol handler. Good job Romano 
[and others].
Graham:
5-Feb-2006
RAMBO Ticket #-578
Exists? corrupts http protocol.
Graham:
5-Feb-2006
looks like 'query is corrupting http protocol.
Gabriele:
20-Nov-2006
I want to improve the esmtp:// protocol to fix a few bugs reported 
to RAMBO... and make it more conformant to the RFC
Gabriele:
20-Nov-2006
should it fall back to HELO if EHLO fails, or should we tell users 
to use the old smtp:// protocol if they are dealing with an old server?
Gabriele:
20-Nov-2006
i mean, if noone in the world will ever need the fallback, there's 
no point in adding it. in weird cases when you have to work with 
some 15 years old server, you may just use the old smtp:// protocol.
Graham:
20-Nov-2006
that way we only need one protocol ..
Gabriele:
21-Nov-2006
(imap protocol)
Gabriele:
23-Nov-2006
paul, the new switch allows multiple cases, thus /all makes sense. 
actually, I was able to use that in the imap protocol, which was 
using a "trick" to obtain the same results. so, now it's more readable 
and more elegant.
Group: Core ... Discuss core issues [web-public]
Graham:
6-Mar-2005
There is a difference between the IMAP protocol itself (RFC 2060) 
and the imap:// URL scheme (RFC 2192). At this time REBOL only supports 
the imap:// URL scheme, which has a subset of the full IMAP protocol 
functionality. It handles mailbox lists, message lists, retrieving 
and deleting of messages, and message searches, i.e. it is API-compatible 
to pop://, with added support for multiple mailboxes and searches. 
Move/copy/rename and other administrative IMAP functions are not 
specified in RFC 2192 and not supported by REBOL's imap:// scheme 
at this time.
Alek_K:
26-Apr-2005
I'm planning doing a database - in year it will be about 3000 records 
(30 fields each)

What to use - some kind of  rebol blocks (as here http://www.rebol.net/cookbook/recipes/0012.html
) or should I doing it with "mysql-protocol" by DocKimbel?
Graham:
6-Jun-2005
the problem with the standard rebol pop protocol is that it doesn't 
allow you to download the headers only.
Group: Parse ... Discussion of PARSE dialect [web-public]
Ingo:
3-Aug-2005
What are the recursion limits on 'parse? Because I just hit it in 
the imap:// protocol ...
Group: MySQL ... [web-public]
Pekr:
9-Jan-2006
ah, extended the table and it shows:

----- Server ------
Version: 5.0.18-nt
Protocol version: 10
Thread ID: 36
Crypt Seed: iR=xh!fb
Capabilities: [
    long-flag
    connect-with-db
    compress
    protocol-41
    transactions
    secure-connection
]
Pekr:
9-Jan-2006
newer version uploaded - now you can see there is protocol-41 flag, 
as well as secure-connection, according to which you can decide new 
auth. method was used imo ...
Pekr:
9-Jan-2006
so, if you don't confirm there were changes in low-level protocol 
handling (reading, sending, flushing etc. code), then I can adapt 
the code to automatically distinguish for old/new auth scheme and 
respond accordingly. That could be some intermediate version for 
ppl to use ...
Dockimbel:
10-Jan-2006
MySQL server protocol has changed since 4.1.0 (with a big evolution 
starting from 4.1.1) and is not compatible with the older protocol. 
Strangely, server v5 allow clients to connect with the older (pre-4.1) 
protocol providing the good flags...(that's odd). Need more investigation 
to see if the old driver can still be used reliably with v5.
Dockimbel:
10-Jan-2006
From 4.1.1, there's a lot of changes in the protocol, mainly a lot 
of new fields.
Dockimbel:
10-Jan-2006
The protocol number hasn't been incremented, the server and client 
code in libmysql is messy...
Dockimbel:
10-Jan-2006
yes it is, AFAICT. But it's protocol 4.1.1+, not the old one that 
is implemented in my driver.
Pekr:
10-Jan-2006
I would be able to write it according to specs imo according to above 
protocol, but - I don't understand rebol port model, so :-(
Dockimbel:
10-Jan-2006
The server has still the support code for all protocol versions. 
That's why the old code is working, but according to the flags, (especially 
protocol_41), it should have rejected your connection. That's why 
I found it odd that your code was working. Anyway, let try to use 
this to make it work with the older code.
Pekr:
10-Jan-2006
I think I know why ... maybe :-) ..... simply put, I don't send protocol_41 
back after the greetings phase ...
Pekr:
10-Jan-2006
latest version: http://www.rebol.cz/mysql/mysql-protocol-new.r
Coccinelle:
12-Jan-2006
Dock, if you publish a new version of mysql-protocol.r, it's time 
to make the correction of the bug in the init function, the longlong 
conversion and in the data reading initialization.
Dockimbel:
14-Jan-2006
I have plans for a version 2 of this driver including a full code 
rewritting for much cleaner design, speed improvements, optional 
async API, support more protocol features (like LOAD DATA), implement 
the v5 protocol, improved user API (e.g.: select column in a record 
by field name), etc...
Robert:
14-Jan-2006
I need one that's integrated into Rebol. Didn't took a look at it. 
Just thought it makes sense to have a protocol like DocKimbel's and 
re-use it with different databases (R-ODBC)
Pekr:
14-Jan-2006
but mysql protocol is not your priority, is it? It simply works now 
:-)
Dockimbel:
25-Jan-2006
The v3.xx protocol is flawed. The scrambled password is sent to the 
server as a zero terminated string. But the scrambling method, sometimes 
contains a 00 byte. The server then, cuts the password prematuraly 
(error 1043) or if the zero is at the beginning of the string, considers 
that the user didn't provide any password (error 1045).
Dockimbel:
25-Jan-2006
The new 4.1.1+ protocol fixes that kind of issue by sending the string 
size first (like in Pascal language). The current driver doesn't 
implement the new protocol. This will be the main feature of the 
v2 of the MySQL driver.
Dockimbel:
25-Jan-2006
I agree, I never use this approach when I design a new protocol. 
It leads to error and it's harder to handle on the receiver side 
because you don't know how much data you're waiting for.
Dockimbel:
25-Jan-2006
v1.0.3 uploaded. That's my new candidate for 1.0. The connection 
process is now rock solid! I've stressed it with 20,000 connections 
without troubles. The protocol flaw for password is now silently 
handled by the driver by reconnecting to the server.
Ammon:
22-Feb-2006
Apparently MySQL 5 has a datatype that isn't defined in the protocol, 
adding this line seems to work just fine:

defs/types 246 decimal
PeterWood:
29-Mar-2006
I'm getting the Error 1043 Bad Handshake problem accessing My-SQL 
5.0.18 on Windows/XP using mysql-protocol.r via  localhost: that 
Alain Goyé reported on the mailing list:

>> db: open mysql://root:?@localhost/fundamentals
Password: *********
connecting to: localhost
>> insert db "SELECT * FROM books"
** User Error: ERROR 1043 : Bad handshake
** Near: insert db "SELECT * FROM books"

It works fine from another machine over the LAN.
PeterWood:
29-Mar-2006
I've just realised that I' have old_passwords set on and am using 
the latest version of Mysql-protocol.r :-(
PeterWood:
29-Mar-2006
I solved the problem by installing the 0.99 version of mysql-protocol.r. 
It was quicker than trying to get XAMPP to accept a MySQL revised 
configuration file.
Dockimbel:
6-Jun-2006
Tried creating a user using that tool under WinXP and OSX, then I 
tried connecting with mysql-protocol.r => no problem...
Henrik:
6-Jun-2006
I think the client is confused about that. The error log for it says 
that old passwords are not supported for 5.0. I initially tried to 
turn old passwords on, because I didn't think mysql-protocol.r supported 
newer ones.
Henrik:
10-Jun-2006
copying old 3.x files in v5 server works but results in a big mess 
and unstable behaviour
 <--- is that because of MySQL or mysql-protocol.r?
james_nak:
10-Jun-2006
Thank you. With the old protocol I would sometimes get  an error 
 (and exit from the program) when I inserted into a closed port. 
I will give these a shot.
Dockimbel:
11-Jun-2006
do %mysql-protocol.r
do %mysql-client.r
mysql
Group: Linux ... [web-public] group for linux REBOL users
Graham:
5-Apr-2007
now where is the ntp protocol ?
Group: !Readmail ... a Rebol mail client [web-public]
Graham:
30-Jun-2007
it doesn't use Rebol's imap protocol though
Janeks:
31-Mar-2009
What I found that Rebol could be used with Exchange by using IMAP 
protocol, but only with some authentication methods.
In my case it is NTLM and it it not supported by Rebol.
Group: SDK ... [web-public]
Allen:
15-Oct-2005
If space is an issue, you can save a lot of space by removing protocols 
that aren't required. I got a few with full VID based but with only 
http protocol supported.. 506kb, 

I'm sure I could drop another 80-100 if I switched to using rebface.
Group: !Uniserve ... Creating Uniserve processes [web-public]
Graham:
17-May-2005
I have also a smtp protocol that I will use to send mail.  Why not 
use the existing smtp that comes with Rebol?  My one uses Vincent's 
dig to find the email's mail server, and sends it directly.
Pekr:
24-Jan-2006
Doc - so - will you release mysql protocol as 1.0 stable?
Volker:
25-Jan-2006
encrypt only the data, not the protocol-infos?
MikeL:
1-Sep-2006
When I can get that simple part working then I want to add Make-Doc, 
my-sql-protocol and Andrew's ML dialect as services so I can get 
some leverage from these.
Dockimbel:
4-Sep-2006
Btw, this new event is untested yet. I should be able to provide 
you a small prototype service and client protocol to show you how 
to use it.
Scot:
1-Oct-2006
Need some help...Can't seem to get Uniserv working on my XP laptop. 
 This is my first try...so I don't have enough experience to see 
what is happening.  Do I have the wrong version of core?

>> uniserve/boot
[uniserve] Async Protocol Admin loaded
[uniserve] Async Protocol DNS loaded
[uniserve] Async Protocol FastCGI loaded
[uniserve] Async Protocol HTTP loaded

** Script Error: change expected series argument of type: series 
port
** Where: install-plugin
** Near: change pos/2 new
>>
Dockimbel:
3-Oct-2006
Hi Scott, my fault, the release archive contains a duplicate HTTP 
protocol file, so they collide on loading. Just remove the following 
file : uniserve/protocols/HTTP2.r
Mchean:
29-Jan-2007
I figured out how to stop the service tying up the 80 port , When 
i run this is what I get: >> do %/c/temp/rebol/uniserve/uni-engine.r
== true
>> uniserve/boot
[uniserve] Async Protocol Admin loaded
[uniserve] Async Protocol DNS loaded
[uniserve] Async Protocol FastCGI loaded
[uniserve] Async Protocol HTTP loaded

** Script Error: change expected series argument of type: series 
port
** Where: install-plugin
** Near: change pos/2 new
BrianH:
7-Feb-2007
Do you mean that sessions are non-working, or that there is something 
about non-working sessions that makes HTTP (a stateless protocol 
that wouldn't normally need sessions) not work?
Dockimbel:
13-Feb-2007
About server-side SSL : after several beers last year in Paris, Carl 
told me that the ssl:// scheme could be turn to work as server-side 
with just the right flag set (IIRC, was about setting the right "direction" 
in encryption), then you "just" have to implement server-side HTTPS 
protocol to support it fully. I've since that, tryed several times 
to get the info about the "magic flag" from Carl, without success. 
So I've prepared several dozens bottles of beer to be sure to get 
the info from him at the next DevCon ;-).
Graham:
26-Feb-2007
It has an undocumented tcp protocol .. so for Linux, there is no 
option but to move to something else
Graham:
26-Feb-2007
Or, to try and reverse engineer the protocol from another product
Dockimbel:
1-Mar-2008
Cheyenne uses the latest Uniserve's version. There's no special version 
of Uniserve for Cheyenne, so it's mono-thread. Uniserve also brings 
IPC between several slave processes using the task-master protocol 
(part of Uniserve, used in Cheyenne to run CGI and RSP scripts).
BrianH:
17-Oct-2010
R/S is a network protocol, mostly used for RPC. Uniserve is an infrastructure 
you can use to build network protocols on. For instance, the Cheyenne 
web server is built on Uniserve. For that matter, at one point someone 
built an R/S implementation on Uniserve.
Group: Rebol School ... Rebol School [web-public]
Pekr:
26-Oct-2007
smtp servers usually don't allow you to send email via themselves, 
if you are not part of particular network, or they require authentication 
to smtp - usually your accont name and password is enough. I think 
that in such case, you are out of luck with REBOL. Not sure our smtp 
protocol can handle it ... but - go to www.rebol.org and try to search 
for "smtp" - there are some scripts which could help you ....
Vladimir:
29-Oct-2007
How complicated is it to make simple file transfer between two computers 
(one client and one server) in rebol?
What protocol should I use?
Any ideas?

Currently I'm sending e-mails from clients with file-atachments because 
its the simplest way of collecting data from clients. (so far they 
were doing it by hand -  so this is a big improvement :)
Gregg:
29-Oct-2007
There are a lot of ways you could do it, FTP, LNS, AltMe file sharing, 
custom protocol on TCP. It shouldn't be hard, but I would try to 
use something existing. The devil is in the details.
Pekr:
1-Nov-2008
I went thru all the docs, and nothing suspicious in there. As your 
Total Commander FTP connection works, it has to be REBOL in conjunction 
with your local PC firewall or something like that. Or REBOL ftp 
protocol working differentcly could be the cause, but not sure, as 
it works from other locations ...
Vladimir:
5-Nov-2008
Here is log from rebol ftp upload:


No.     Time        Source                Destination           Protocol 
Info

     67 3.356898    192.168.2.108         194.9.94.127          TCP   
        spiral-admin > ftp [SYN] Seq=0 Win=16384 Len=0 MSS=1460

     79 3.982028    194.9.94.127          192.168.2.108         TCP   
        ftp > spiral-admin [SYN, ACK] Seq=0 Ack=1 Win=16384 Len=0 MSS=1100

     80 3.982082    192.168.2.108         194.9.94.127          TCP   
        spiral-admin > ftp [ACK] Seq=1 Ack=1 Win=16500 Len=0

     90 4.056926    194.9.94.127          192.168.2.108         FTP   
        Response: 220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------

     92 4.057544    192.168.2.108         194.9.94.127          FTP   
        Request: USER visaprom.com

    102 4.129540    194.9.94.127          192.168.2.108         FTP  
        Response: 331 User visaprom.com OK. Password required

    103 4.129689    192.168.2.108         194.9.94.127          FTP  
        Request: PASS Du4m1t0R

    106 4.241608    194.9.94.127          192.168.2.108         FTP  
        Response: 230-User visaprom.com has group access to:  www    
     

    107 4.241781    192.168.2.108         194.9.94.127          FTP  
        Request: SYST

    118 4.305921    194.9.94.127          192.168.2.108         FTP  
        Response: 215 UNIX Type: L8

    119 4.306117    192.168.2.108         194.9.94.127          FTP  
        Request: PWD

    134 4.367656    194.9.94.127          192.168.2.108         FTP  
        Response: 257 "/" is your current location

    136 4.370939    192.168.2.108         194.9.94.127          FTP  
        Request: PORT 192,168,2,108,13,111

    143 4.435976    194.9.94.127          192.168.2.108         FTP  
        Response: 200 PORT command successful

    144 4.468135    192.168.2.108         194.9.94.127          FTP  
        Request: CWD apl/

    194 5.499179    192.168.2.108         194.9.94.127          FTP  
        [TCP Retransmission] Request: CWD apl/

    198 5.565745    194.9.94.127          192.168.2.108         FTP  
        Response: 250 OK. Current directory is /apl

    199 5.565955    192.168.2.108         194.9.94.127          FTP  
        Request: TYPE I

    275 7.640872    194.9.94.127          192.168.2.108         FTP  
        Response: 200 TYPE is now 8-bit binary

    276 7.641186    192.168.2.108         194.9.94.127          FTP  
        Request: STOR ik104test.zip

    290 7.903130    194.9.94.127          192.168.2.108         TCP  
        ftp > spiral-admin [ACK] Seq=613 Ack=111 Win=16500 Len=0

   1279 37.655879   192.168.2.108         194.9.94.127          TCP 
        spiral-admin > ftp [FIN, ACK] Seq=111 Ack=613 Win=15888 Len=0
Vladimir:
5-Nov-2008
No.     Time        Source                Destination           Protocol 
Info

     90 2.750586    192.168.2.108         194.9.94.127          FTP   
        Request: TYPE I

     97 2.823074    194.9.94.127          192.168.2.108         FTP   
        Response: 200 TYPE is now 8-bit binary

     98 2.828500    192.168.2.108         194.9.94.127          FTP   
        Request: PASV

    113 3.171841    192.168.2.108         194.9.94.127          FTP  
        [TCP Retransmission] Request: PASV

    114 3.244193    194.9.94.127          192.168.2.108         TCP  
        [TCP Previous segment lost] ftp > mgemanagement [ACK] Seq=80 
    Ack=15 Win=16500 Len=0

    131 3.889034    194.9.94.127          192.168.2.108         FTP  
        [TCP Retransmission] Response: 227 Entering Passive Mode (194,9,94,127,250,69)

    137 3.984887    192.168.2.108         194.9.94.127          FTP  
        Request: STOR ik104test.zip

    149 4.247163    194.9.94.127          192.168.2.108         TCP  
        ftp > mgemanagement [ACK] Seq=80 Ack=35 Win=16500 Len=0

    210 7.046287    194.9.94.127          192.168.2.108         FTP  
        Response: 150 Accepted data connection

    241 7.218716    192.168.2.108         194.9.94.127          TCP  
        mgemanagement > ftp [ACK] Seq=35 Ack=110 Win=16269 Len=0

   1613 17.145048   194.9.94.127          192.168.2.108         FTP 
        Response: 226-File successfully transferred

   1617 17.172970   192.168.2.108         194.9.94.127          FTP 
        Request: SIZE ik104test.zip

   1620 17.277591   194.9.94.127          192.168.2.108         FTP 
        Response: 213 566605

   1623 17.375906   192.168.2.108         194.9.94.127          FTP 
        Request: TYPE A

   1628 17.498619   194.9.94.127          192.168.2.108         FTP 
        Response: 200 TYPE is now ASCII

   1629 17.516657   192.168.2.108         194.9.94.127          FTP 
        Request: PASV

   1633 17.644044   194.9.94.127          192.168.2.108         FTP 
        Response: 227 Entering Passive Mode (194,9,94,127,205,237)

   1637 17.750889   192.168.2.108         194.9.94.127          FTP 
        Request: LIST

   1643 17.835367   194.9.94.127          192.168.2.108         FTP 
        Response: 150 Accepted data connection

   1644 17.863490   194.9.94.127          192.168.2.108         FTP 
        Response: 226-Options: -a -l 

   1645 17.863548   192.168.2.108         194.9.94.127          TCP 
        mgemanagement > ftp [ACK] Seq=75 Ack=364 Win=16015 Len=0
Group: rebcode ... Rebcode discussion [web-public]
Pekr:
24-Oct-2005
guys, how well does parse play with rebcode? It was said that parse 
is VM in itself, it is very right, but now we have some discussion 
about zlib support. Let's suppose we have rebol version on rebol.org 
and that we would like to speed it up. We can simple extend the idea 
to any other datatype (= in amiga terms, simply a file format, or 
protocol one). you will surely want to use parse. The question is, 
if you can speed up some things using rebcode?
Group: AJAX ... Web Development Using AJAX [web-public]
Pekr:
4-Dec-2005
Maarten - never studies Ruby on Rails, but isn't IOS good framework 
at itself? (of course without web templating) .... I still can see 
IOS as powerfull, and imo things like Qtask, or Beer + some templating 
+ IOS-like app protocol, could be stronger ....
Group: Syncing ... Syncing technologies [web-public]
Pekr:
4-Jan-2006
rsync - file syncing protocol - http://samba.anu.edu.au/rsync
Pekr:
4-Jan-2006
I would like to have answered:


1) what technique to use for "timestamping" - do we continue with 
timestamps against one central time, or do we use hashes, or sequencing 
numbers, or mixture of mentioned techniqueues? We might look how 
others do it ...


2) better support for possible conflicts - imagine following scenario 
- you have some reblet, e.g. Contacts - one person starts editing 
it, then another person starts editing it too. First one syncs (saves 
changes), then second one does the same - changes of first ones are 
lost. How to aproach this - introduce some kind of resources locking? 
(not real locking, but we are message based, so could be queued)


It could work as follows - person 1 wants to edit some record. Edit 
button posts request-for-lock. Lock is assigned. I other person tries 
to edit, it will not obtain lock. We could even introduce protocol 
level support, so that the person is informed, who has the lock, 
and how long. The trouble usually comes, when person goes off-line 
after the edit started - we need to remove dead-locks, so by default, 
I would lock for 20 minutes e.g. and the lock would have to be renewed, 
if person 1 wants to work longer with the given document ...


another scenario is, when you actually start editing something which 
might require locking, but you start already being off-line. We could 
create lock-request, just not synced yet. Once you go on-line, you 
simply check seqno, if the lock is possible, and the given record 
not modified. But what if it was modified in the meantime? e.g. you 
might be working with stock system and someone else in the office 
sells few units, for which you may start writing offer for to another 
customer. Tough scenario - would like to know your opinion. Maybe 
some things simply need to be done on-line only?


3) I needed small file-sync scenario - could use IOS, but IOS can't 
sync and "forget". Simply idea is to have different kind of syncing 
techniques, so e.g. for file transfer you have dir to sync, if correctly 
synced, log it, forget it, delete it on client and or server (or 
not, it depends)


as for IOS, local storage could be encrypted (or not), imported into 
RebDB (no single better solution so far introduced for rebol), sync-per-record 
or record-set could remain (record=document). RebDB on Serve would 
speed things up significantly too ...


another possibility is to think outside the IOS terms, in more general 
way - simply thinking about world of objects, being in various states, 
with various life-time around internet and on-line or off-line devices. 
I think that maybe we could find some simpler solution than SyncML 
and the likes ...


another point - such techniques should be transport independent, 
so I would not like to hear that it needs this or that ;-)

So, anyone?
Group: Tech News ... Interesting technology [web-public]
Chris:
21-Jun-2006
Again, not a rhetorical question -- I see both as filling a similar 
space, I think Carl described it as 'disposable applications', easy 
to author, easy to use.  Widgets look good, but break the windows 
metaphor, substituting gimmicky aesthetics for consistent user experience. 
 I'm not sure there is value in the effort to emulate them over 1. 
making it easier to communicate with the services that drive them 
(better XML handlers, more flexible HTTP protocol, I18N, whatever), 
2. making reblets more accessible (within the OS, not the browser), 
3. providing an effortless base for making reblets look and feel 
good (still a chore, despite the capability of the view engine).
Chris:
21-Jun-2006
Ajax is a clear combination of four components protocol (http), data/interface 
(html), presentation (css) and behaviour (js).  You can create a 
functional web app with the first two.  Then you can optimise by 
modifying behaviour.  Then (or from the beginning) make it look good 
with CSS.
Pekr:
13-Nov-2006
is there description of FB protocol anywhere? I mean - to do eventually 
tcp driver?
Group: !RebDB ... REBOL Pseudo-Relational Database [web-public]
Ashley:
8-Feb-2006
Thanks, I'll take a look at it. (Marco's sql-protocol.r is also a 
good read).
Coccinelle:
9-Feb-2006
Ashley, sql-protocol generates the code used to extract and join 
the data is grouped in 2 functions :
- make-do-select
- make-do-loop

They receive the column list, the table list (a block of table/alias 
pair), the where code to apply and the database (the port).


If you provide these parameters and change the code to invoke RebDB 
fuction to get the data, you will have a basic join implementation 
for RebDB. You can use it and extend it for RebDB, if you want, I 
will be happy if you do so.
Coccinelle:
13-Feb-2006
sql-protocol don't need these heavy use of 'compose, 'join, 'reduce 
 if you use the dialect. Something like this work :
   var1: "Marco" 
   insert my-db [select * from my-table where name = var1]
   my-result: copy my-db

Another example to ilustrate this :

   insert my-db [select * from my-table where name like rejoin ["*" 
   var1 "*"]]


This is only if you use the dialect to query the database. If you 
use the standard SQL string, you need to compose the query.
Group: SQLite ... C library embeddable DB [web-public].
Ashley:
12-Feb-2006
Anyone had any experience with SQLite (http://www.sqlite.org/), especially 
in conjunction with REBOL? What are the limitations of sqlite3-protocol.r 
(http://www.rebol.org/cgi-bin/cgiwrap/rebol/view-script.r?script=sqlite3-protocol.r), 
if any?

I'm interested to see how folks have dealt with issues such as:


 1) Support for datatypes other than TEXT, INTEGER, NUMBER and BLOB?

 2) All tables in one DB, or one table per DB to improve concurrency?

 3) Multi-user access across a network, given this statement from 
 the SQLite website:


SQLite uses reader/writer locks to control access to the database. 
(Under Win95/98/ME which lacks support for reader/writer locks, a 
probabilistic simulation is used instead.) But use caution: this 
locking mechanism might not work correctly if the database file is 
kept on an NFS filesystem. This is because fcntl() file locking is 
broken on many NFS implementations. You should avoid putting SQLite 
database files on NFS if multiple processes might try to access the 
file at the same time. On Windows, Microsoft's documentation says 
that locking may not work under FAT filesystems if you are not running 
the Share.exe daemon. People who have a lot of experience with Windows 
tell me that file locking of network files is very buggy and is not 
dependable. If what they say is true, sharing an SQLite database 
between two or more Windows machines might cause unexpected problems.
Pekr:
13-Feb-2006
dunno of sqlite3 protocol, will try. I also found out, there is btn-sqlite.r 
or something like that (where btn = better than nothing), and it 
uses command line sqlite.exe to get the result :-)
Ashley:
13-Feb-2006
sqlite3-protocol.r has a minor bug whereby locals/cols are not cleared. 
Fix is to add a "clear cols" at the beginning of the ' sqlite-exec 
func. Two other changes I made to this function were:


1) Changing “SQLITE_TEXT [any [attempt [load val: sqlite3/column_text 
stmt j] val]]” so as REBOL values are returned, and

2) Removing the /only clause from "system/words/insert/only tail 
result col" for those that prefer flat data structures (i.e. non-blocked 
records)

Finally, a simple wrapper makes the whole thing more usable:

context [

	db: none

	set 'open-db func [name [file!]] [
		db: open join sqlite://localhost/ name
	]

	set 'close-db does [
		close db
	]

	set 'describe func ['table [word!]] [

  insert db rejoin ["select type, name, sql from sqlite_master where 
  upper(tbl_name) = '" uppercase form table "' order by rootpage"]
		db/locals/sqlresult
	]

	set 'sql function [arg [string! block!]] [statement] [
		case [
			string? arg [insert db arg]
			string? first arg [
				statement: copy first arg
				repeat i -1 + length? arg [
					replace/all statement join ":" i pick arg i + 1
				]
				insert db statement
			]
		]
		db/locals/sqlresult
	]
]

which lets you do stuff like:

>> open-db %test.db
>> sql "create table t1 (col1 INTEGER, col2 TEXT)"
== []
>> describe t1
== [table t1 "CREATE TABLE t1 (col1 INTEGER, col2 TEXT)"]
>> sql reduce ["insert into t1 values (1,':1')" now/date]
== []
>> sql "select * from t1"
== [1 13-Feb-2006]
>> close-db
Ashley:
13-Feb-2006
sqlite-exec appends column names to the locals/cols block ... but 
does not clear the block for each new query. Run a couple of queries 
and check the contents of locals/cols, you'll see what I mean (all 
this is assuming you are using the %sqlite3-protocol.r script dated 
22-Mar-2005).
Pekr:
13-Feb-2006
I also noticed there is brand new version of techfell protocol for 
sqlite ... dunno if it is based upon sqlite.exe shell calls, just 
investigating it ...
Ashley:
13-Feb-2006
1) how to influence where it stores/creates database?


Don't know, I've only been looking at all this for a day and havn't 
worked that out yet either.


2) if I would use separate file for some tables, if it would be able 
to join them


Yes. The ATTACH command lets you "hook up" to multiple databases, 
and you can prefix references with database name.

3) noticed there is brand new version of techfell protocol


Of the *four* sqlite scripts on REBOL.org %sqlite3-protocol.r is 
the one to use if you have a Pro licence.

4) those guys are really screwing with GPL license ...

Who? SQLite is PD as is %sqlite3-protocol.r
Pekr:
13-Feb-2006
they base their work on mySQL-protocol.r, which is imo BSD, or not?
Pekr:
14-Feb-2006
I decided to revert back to sqlite3 protocol, not the one Cal Dixon 
turned into scheme. The scheme simply does not fit here ...
Ashley:
16-Feb-2006
I've given up on the one table per database idea as the default attachment 
limit is 10 files. On the positive side, the ATTACH command seems 
to work properly under 3.0+ and table names unique to an attached 
database do not have to be prefixed in queries. ;) My 'connect function:

>> help connect
USAGE:
    CONNECT database /create /attach databases /blocked /direct

DESCRIPTION:
     Open a SQLite database.
     CONNECT is a function value.

ARGUMENTS:
     database -- (Type: file url)

REFINEMENTS:
     /create -- Create database if non-existent

     /attach -- Attach up to 10 databases (of type file!) to this connection
         databases -- Database files (Type: block)
     /blocked -- Return each row as a block
     /direct -- Do not mold/load REBOL values

lets you do this:


 connect/attach %/c/app/data/system.db [%/c/app/data/users.db %/c/app/data/reports.db]
	sql "select * from a-system-table"
	sql "select * from a-user-table"
	sql "select * from a-report-table"


which could be quite useful in many situations. The default, however, 
is now one database.


BTW, my rewrite (even after adding a lot more functionality) is about 
twice as fast as the original protocol version.
Pekr:
22-May-2006
Ashley - Bobik is getting following error (not so with original sqlite3 
protocol):

>> sql "select * from kategorie"

== [[1 30 34 M30] [2 35 39 M35] [3 40 44 M40] [4 45 49 M45] [5 50 
54 M50] [6 55 59 M55] [7 60
 64 M60] [8 65 69 M65] [9 70 74 M70] [...
>> sql "select * from kartoteka"
** Script Error: Out of range or past end
** Where: sql
** Near: either all [block? v #"[" <> first s] [rejoin v] [v]
>>
Pavel:
14-Dec-2007
To GiuseppeC there is a simple server based on SQLite look at SQLIte 
Wiki/SQLiteNetworks/uSQLiteServer a protocol to this is also in rebol.org.


Anyway I can tell you a secret not to tell anybody: try to use rebface.exe 
from public available REBOL/SDK 2.7.5 BETA . It seems the /Pro restriction 
is not applied there for some reason and SQLite protocol works sweet 
for me there.

You can got  an idea run "local database backend" in one rebface 
process and application in another on rebol version of your choice. 

THANKS ASHLEY FOR A GOOD JOB.
Group: !REBOL3-OLD1 ... [web-public]
Pekr:
30-Mar-2006
ok, thanks anyway ... btw - talked to DocKimbel some time ago, and 
for R# he wanted two layer port model - lower level, and higher protocol 
level .... maybe just an idea, but imo Carl knows which way to go 
:-)
Group: !Liquid ... any questions about liquid dataflow core. [web-public]
Maxim:
24-May-2007
basically a connection based TCP i/o interface to any liquid network. 
 you define the ports, the protocol (on either end) and can then 
interface your Dataflow across machines  :-)  it would allow distributed 
processing without any understanding of such concepts.
Group: !Cheyenne ... Discussions about the Cheyenne Web Server [web-public]
Will:
29-Apr-2007
Chris, sorry to not have chimed in before, I have a quite modified 
cheyenne that is in production for some time, only I have little 
time to help as I'm evely under pressur, somu guys came up with joomla 
in the company I work for, so it's either me coding from 0 or them 
assempling  jomla modules.. I could clean it up and send u a copy 
but this will be obsoleted by Dockimbel next version. it has rewrite 
rules and a slightly modified mysql protocol and a hihly modified 
mysql wrapper  to support stored procedures and getting data easly. 
like database: mysq://localhost/dbName db-open value: db-get 'table 
'column [{id=?} variable ] .
Dockimbel:
29-May-2007
In any cases, HTTP communications involve a request from the client, 
so it implies an URL...unless your JS is not using HTTP protocol 
?
Pekr:
29-May-2007
heh, I have got crash with latest version:

[uniserve] Async Protocol FastCGI loaded
[uniserve] Starting task-master...
[uniserve] Starting HTTPd...
make object! [
    code: 312
    type: 'script
    id: 'cannot-use
    arg1: 'add
    arg2: 'time!
    arg3: none
    near: [time: time + port/timeout
        if
    ]
    where: 'close-expired
]


I run Apache on port 80, so I changed httpd to 8080 ... sinmple CGI 
works, I logged into application OK, simple page worked, 4 RSP test 
crashed with above error ...
Dockimbel:
30-May-2007
About PHP support, it works ok and out of the box with latest PHP 
binary on non-windows platforms. We tested it with phpMyAdmin and 
WordPress. It still not ready for production,  due to scalability 
issues. I need to improve and finalize my FastCGI protocol implementation 
to fix that.
Terry:
4-Jun-2007
If you want to try this method for windows.. here's what you do.. 


1) download the windows binary from openssl.. ->   http://www.slproweb.com/products/Win32OpenSSL.html

2) Unzip.. and pull out the openssl.exe file from the bin folder.. 
. drop that file into your cheyenne www folder
3) Create a self-signed cert....
3a) run openssl.exe

3b) enter this line: req -x509 -nodes -days 365 -newkey rsa:1024 
-keyout localhost.pem -out localhost.pem
(localhost is the cert name)

3c) answer the questions... when asked 'who are you?' enter your 
domain,  or 'localhost' as I did 

This will generate the cert in your www folder (this is just a demo... 
the openssl server uses it's location as root www folder)

4) Start up the server... enter this line into openssl:  s_server 
-accept 443 -cert localhost.pem -WWW


Now open any file in your Cheyenne www folder using the https:// 
 protocol
Will:
8-Jun-2007
if you don't need the http service than you propably need only uni-engine.r 
and build your own service/protocol otherwise mods can override every 
phase of the httpd .. better wait for DocK..
Terry:
9-Jun-2007
hmm.. followed the instructions.. uncommented the httpd.conf (need 
to comment out the others??)

[uniserve] Async Protocol FastCGI loaded
[uniserve] Starting task-master...
[uniserve] Starting HTTPd...

## Error in [uniserve] : On-received call failed with error: make 
object! [
    code: 303
    type: 'script
    id: 'expect-arg
    arg1: 'in
    arg2: 'object
    arg3: [object! port!]
    near: [if in site 'on-request [
            if site/on-request req params svc [return true]
        ]]
    where: 'handler
] !
Graham:
9-Jun-2007
Script: "Cheyenne Web Server" (9-Jun-2007)
Script: "Untitled" (none)
[uniserve] Async Protocol FastCGI loaded
[uniserve] Starting task-master...
[uniserve] Starting HTTPd...
make object! [
    code: 300
    type: 'script
    id: 'no-value
    arg1: 'do-events
    arg2: none
    arg3: none
    near: [do-events]
    where: none
]
>>
Graham:
9-Jun-2007
>> do-events: func [
[        "Process all View events."
[    ][
[        wait []
[    ]
>> do %cheyenne.r
Script: "Cheyenne Web Server" (9-Jun-2007)
Script: "Untitled" (none)
[uniserve] Async Protocol FastCGI loaded
[uniserve] Starting task-master...
[uniserve] Starting HTTPd...
Dockimbel:
10-Jun-2007
Terry: sure, but that's no more HTTP protocol ;-)
Group: DevCon2008 (post-chatter) ... DevCon2008 [web-public]
Geomol:
17-Dec-2008
Graham, there's some info here about default browser in the registry:

http://newoldthing.wordpress.com/2007/03/23/how-does-your-browsers-know-that-its-not-the-default-browser/


It's not only the file-type, it seems, but also per protocol. Try 
check for example HKEY_CLASSES_ROOT/HTTP/shell/open/command and such.
101 / 6781[2] 34567