World: r3wp
[!Cheyenne] Discussions about the Cheyenne Web Server
older newer | first last |
onetom 20-Apr-2011 [9988] | if u note it down here tonite i will shovel ur words into the cheyenne wiki |
Dockimbel 20-Apr-2011 [9989] | I need to work on Red this afternoon, I'll do a pass on things to add in Cheyenne tonight. |
onetom 20-Apr-2011 [9990x2] | the binary works, the source doesn't... |
the source version just gives 404 to everything | |
Maxim 20-Apr-2011 [9992] | can anyone get a login for the cheyenne wiki? I'd really like to put down my trials and errors of building my own cheyenne mod (with handler), so that others may benefit of knowing the few little caveats which can make the whole thing fail .... maybe do something like a step by step tutorial to begin with. I'd also like to document all the phases of each internal layer of cheyenne (there are many), so that we can more easily navigate the code, knowing what we are doing and what other phase is part of each type of mod,extension, service, etc. often, we see just one or two parts of a system implemented per module and its hard to get the whole picture. ironically, looking at the base objects is also hard to do, since there is so much "internal" code that it gets REALLY hard to understand what is internal, what is "interface" and what is provided as helper funcs for your own systems to use. Add the fact that there are many layers sitting over each other, some layers which aren't actually layers of code, but layers in the "chain of command" and various phases. now that I've made sense of a *portion* of this, I think I'm well placed to start documenting this. I think that having a complete api reference for cheyenne would be really good for adoptance. It would allow many of us to simply create integrated tools which just drop into cheyenne. (like remark) |
onetom 20-Apr-2011 [9993] | ~1.5yr ago i backed off from cheyenne because i could build a configuration service from the mini webserver on rebol.org. it's just ~60 likes of code and handles get only |
Henrik 20-Apr-2011 [9994] | My main weakness with Cheyenne is the debugging of webapp handlers. I simply can't tell what's going on and why they won't run in my webapp. |
Kaj 20-Apr-2011 [9995x5] | show.cgi: I can't provide a CGI script that would work out of the box on all OSes and every possible local configuration, so I've left it as-is for users to adapt the shebang line. Using onetom's setup script might be the best solution, I'm thinking about integrating it in the Cheyenne sources package. |
Odd, I don't remember having to fix it before, and I didn't formalise it in my build scripts, but thanks | |
Kaj: fast-rebol-cgi issue fixed in revision 131. If you need a new Linux binary, I can build you one (just let me know if you prefer a /Pro or /Cmd version). | |
Pro please, but no hurry. If you can combine it with other changes, please do | |
Ah, wouldn't it be that the shebang line doesn't need to be adapted once fast-rebol-cgi is enabled again? | |
Dockimbel 20-Apr-2011 [10000x3] | Right, in fast-rebol-cgi mode, the shebang line is not processed. |
Also, I might have changed the shebang lines in CGI demo scripts to Windows format for local testing without reverting them to UNIX format once done. | |
I think that I'll setup some automated nightly builds, but probably only for Linux target as a start. I could later add Windows support (I have a Windows box running 24/7), but MacOS will be missing. | |
Maxim 20-Apr-2011 [10003] | if you have all the setup and scripts, I have a mac machine running 24/7... it could easily grab the lates svn and dump the build where you want :-) |
Dockimbel 20-Apr-2011 [10004] | No time tonight to setup the automated builds, will do that tomorrow after finishing 8/16-bit support in Red/System. |
onetom 20-Apr-2011 [10005] | thx for not disappearing in the depths of ur cave without a word ;) my jsondb works with angular now thru cheyenne, btw. no delete though, but not a big issue yet. |
Kaj 20-Apr-2011 [10006] | Ditto. Doc seems to work harder on Cheyenne while taking on Red. Maybe we should come up with a third major project for him ;-) |
Dockimbel 21-Apr-2011 [10007] | If you can provide me a solution to avoid sleeping, why not. ;-) |
Kaj 21-Apr-2011 [10008] | I've been working on one, but I still need to debug it. The current method causes crankiness |
Maxim 21-Apr-2011 [10009] | my take on sleep : The most useful way to waste time ;-) |
Kaj 21-Apr-2011 [10010] | I guess you're forced to that conclusion if you have kids :-) |
Maxim 21-Apr-2011 [10011] | hehe |
Kaj 21-Apr-2011 [10012] | I don't even consider it wasted, because I know my brain programs on while asleep. At dawn, it will often have worked out yesterday's problem. The question is whether the code input of Doc's extra project can fit in his waking time |
Maxim 21-Apr-2011 [10013x3] | yeah, I know... I have 4 batch cores (which is why I often work as quickly on 4 projects as some do on one :-) |
but when the problems are complex, the night sleep doesn't fill up the whole time slot. i.e. the solution is resolved and there is still a lot of batch time left. | |
btw folks, a funded, cheyenne-related project I'm working on has been green lit for public release. I'll be doing a full announcement tomorrow on what it is, and possibly even a prototype code release. :-D | |
GrahamC 22-Apr-2011 [10016x2] | give us a hint |
a small bone will do | |
Maxim 22-Apr-2011 [10018] | web api |
Dockimbel 22-Apr-2011 [10019x3] | FYI, I'm working on setting up automated Linux builds for Cheyenne. |
Automated builds are now up and running (Linux only): http://cheyenne-server.org/download.shtml | |
I will push some changes tonight to see if it works as expected. | |
onetom 22-Apr-2011 [10022] | r u generating that download.shtml dynamically? |
Maxim 22-Apr-2011 [10023] | very nice download pages. probably one of the most conscice page of this kind I've ever been to :-) |
onetom 22-Apr-2011 [10024x3] | i found the version numbers pretty confusing though and the binaries are not sharply separated from the source packages |
newcomers have no freaking idea what is pro and what is cmd.. | |
but i don't have any explicit idea how to make it better, so i didn't want to complain yet ;D | |
Maxim 22-Apr-2011 [10027] | he actually does give the difference between /pro and /command on the page. |
onetom 22-Apr-2011 [10028] | but do i need a keyfile to run it? is it legal to run it? if there is a version which knows such extra features but still miniscule, what's the reason having to separate versions? |
Maxim 22-Apr-2011 [10029x3] | I guess there is one title which might be added... Nightly builds: just before "Sources tarballs of latest revision are also available" |
compiled versions do not require a key, that is what paying the SDK is for. there is no need to talk about license keys within the binary packages... there could be another page which lists all the various source license and REBOL interpreter requirements though, with just a link on this page. something like: <a href="rebol-vs-cheyenne-licensing.shtml" >notes about required REBOL license and interpreter version requirements for use of source versions </a> | |
(should remove the first "required" in that sentence ;-) | |
GrahamC 22-Apr-2011 [10032x2] | keys are not required to run sdk/command encapped builds |
keys are only required to do the encapping | |
Dockimbel 22-Apr-2011 [10034] | Thanks for your suggestions, I'll try to improve this page, especially for newcomers that don't know about REBOL. |
Maxim 22-Apr-2011 [10035x2] | ok, so I promised a little announcement about work I have been doing in/with/for cheyenne... I have built a web service module (mod) for cheyenne. ----------------------- features/highlights ----------------------- * extremely fine tuned to cause the least cpu hit on the server process since ALL processing is done in worker processes. * it uses an arbitrary number of rebol script files which you assign to any host in the config file. (even the default) * once assigned, these files are compiled dynamically (as one app) by the mod and are exposed via http by the server. * only the functions you *chose* are *ever* visible on the web, allowing you to include support libs, data and function right in your server-side api. * no direct execution of code occurs, *ever* from the client to the server, all input is marshaled, and parameters are typed to your function specs. * allows ANY type of web api to be delivered, from REST to SOAP like interfaces. * output is programmable, so that you can output AS json, xml, html, txt, etc. * interface is also programmable, so that you can provide GET params, POST forms, POST (XML, JSON, REBOL native data) * Automatic API documentation via source scanning and function help strings . there will also be some form of comments which will be used by documentation. * No suport for sessions. this is part of your application layer, which should use https and session keys in the submitted data, if you require it. * it takes litterally 5 minutes to convert your internal rebol code into web services which obey internet standards. * System is auto-reconfiguring... i.e. you don't need to close cheyenne to update the service, just restart the workers. |
so, when will this be available? *very soon* I am building my first test release for my client tonight. most of the research and prototyping is done, I already did some client demos for the people who are funding this project and I'm now in the "delivery" phase. The most complicated parts of the system are already working (i.e. handler processes, dynamic compilation, automatic api interface building, per-host api/config, request/response chain of command, multi-format output, and more.) a lot of details are still "up in the air" as far as implementation goes, so if you really have a need for this, PLEASE STAND UP and raise your voice. tell me what you need, how you want it to work, etc. so far I plan to deliver the first release with: support 4 interfaces for calling : GET url, POST XML, POST Form data, POST JSON. support 4 output formats : XML, HTML, JSON, TXT (which is in fact rebol native data) obviously this will be an ongoing project and anyone who is interested in helping out is welcomed to do so. :-) | |
Gregg 22-Apr-2011 [10037] | Sounds cool Max. We have some Cheyenne work going on, so this is definitely of interest. |
older newer | first last |