AltME: SDK

Messages

Maxim
is anyone able to use the /output  refinement of CALL within an encapped app?  
I've tried using different encappers and it just doesn't work for me.  the exact same call string on my rebol console works fine.
and if I remove the /output refinement it also works in the encapp.
but when encapped and using /output,  it runs the call, and then it just hangs. (forever).
I'm running windows 7
james_nak
Maxim, I had an app that did:
call/output/error join {md5 -d} [{"} p  {"}] myout  error
I'm afraid I haven't run the app since March 2011. It did work though. I was using encmdview.exe version 2.7.6.
Not sure I tested it on Win 7 either.
Maxim
I've been testing for a while now, and the same script runs when I launch it from within ultra-edit, and it fails when I try to launch it from the explorer... this is really strange.
james_nak
Hope you can figure it out. Also glad to hear you're an Ultra-edit guy. I've been using this ancient version :-)
SWhite
Before you beat your head on it too much, it might be useful to try it (if you can) on Windows XP.  If it works there but not on Windows 7, then you have a clearer idea of what you are up against.  I still am struggling to have a REBOL program call a Powershell script on Windows 7.  It works fine on XP.
Maxim
another detail, it works if launched from within a command prompt...
This seems more and more related to the defective piping in windows graphical environments.
btw, sometimes specifying an /input   with a value of "^/^/^^/" solves a few command line apps which start asking for returns when they generate an error... I had this problem with a version of ssh I was using a while ago.
Endo
I used CALL with /output on XP soon. It works fine.
And my customers OS is Win7, and it works there too, after try a bit more.
I can check it at Wednesday at work, as it is holiday here tomorrow.
if I remember correctly, there was some issues about paths and quotes.
Try using FileMonitor from Sysinternals and see the paths and command-line arguments for the called application.
Maxim
the command which fails is  "dir"   ;-)
Steeve
Even with VISTA, I have problems using CALL and relative paths.
Changing paths and Woops! you are randomly teleported
Endo
did you put /SHELL ?
Maxim
yes.
Endo
my application calls BCP.exe to import data to a SQL server database.
in /output string I try to FIND "error" word, and if exists, I popup an alert.
your /output is to a pre-initialized string right?
and try /show as well.
Maxim
funny, I was trying something else and just saw that /show was still a refinement  and that works.
darn.  I havn't used /show for years.
Endo
:))
Maxim
but I actually found a better solution.
using cheyenne's Call  and  add  "Cmd /C" to the head of the command (without using  /show)
you must simply remove the  ^M  chars , but at least there are no command prompts popping up.
^M  chars from the piped output
Endo
That's a good solution.
Maxim
rebol turns app dev times upside down.   2 hours to build an app   2 days to figure out how to launch a command line without crashing the app  ;-)
Gregg
The problem with /show, for me, is that it was added in such a way that it broke compatibility with the old version of CALL. Doc's stuff is a great replacement.

Gabriele
Max, the bug with /output in encap used to be that it would fail (i think it would actually crash) if you did not have the REBOL console open. Maybe something similar happens on the newer versions as well?
eg. try a print "something" before the call/output and see if that makes it work.
ddharing
We have had similar problems with Windows 7 and Windows Server 2008R2. I thought it was a new security "feature". Starting the app from a command shell works fine. Setting compatibility options and "run as administrator" doesn't help.
Maxim
Gab, It crashes (freezes) with the console open.  currently, it really requires /show if using the R2 CALL func.
otherwise pre-pending   "CMD /C"    to the command while using cheyenne's win-call also works, but has the advantage of not showing a dos prompt at each execution.

GrahamC
this works from  2.7.8.3.1   get-env "%userprofile%"  but in my SdK I get none.
Ideas
GrahamC
ah.. works without the %
so small difference between the sdk and core
Endo
Here is working example on Win7:
stdout: make string! 255
call/wait/output rejoin [to-local-file system/options/path %\extract.exe " mypassword"] stdout
I remember that CALL supports rebol style file names, but it sometimes fail to run the app. So to put TO-LOCAL-FILE is good.
But in this example extract.exe is a Win32 application that outputs to stdout, not a real DOS app. This might be a difference.
Edgar
Max,
Edgar
try this; outfile, infile, errfile are filepath
cmd: "someexeprog.exe < to-local-file to-file infile > to-local-file to-file outfile 2> to-local-file to-file errfile"
call/wait cmd
If you don't want any filepath, replace them with NUL
Edgar
;correction
outfile: to-local-file to-file "outfile.txt" infile: to-local-file to-file "infile.txt" errfile: to-local-file to-file "errfile.txt"
cmd: rejoin [{someexeprog.exe < } infile { > } outfile { 2> } errfile]
call/wait cmd
Maxim
unfortunately, I can't use temp files (though your suggestion does work, I had looked at doing this too  ;-)
but as I said above, using cheyenne's win-call and pre-pending "CMD /C"  (which is what /shell basically does) works out great.
Edgar
But doesn't that open a console window.
Maxim
nope since I'm not using /show
Edgar
Ok
Maxim
strangely enough adding CMD /C  to  R2's call doesn't fix anyth
anything, so I guess the parameters being used by win-call when the launch process is being done are different.
Gregg
Did Carl release the CALL source at one point, to get input and help on it?
Kaj
Only talked about that, I think

Maarten
Anybody ever tried signing an encapped REBOL binary (R2) for the Mac? With Gatekeeper coming distribution of REBOL application will be dead in the water. OTOH: if we can get it working, I see a productivity boon for a whole suite of Desktop "Apps".

Gregg
Wow. I hadn't seen Gatekeeper. My first thought is that it's less about security than it is about control and revenue, but I could be wrong. Security is good. It seems clear that as things change, "legacy " doesn't mean "really old" anymore.
Arnold
Any additional information what this is exactly about please? (I know of a Gatekeeper script to password protect/hide a directory)
Gregg
Gatekeeper is their new security system, to keep out malware (and maybe anything else they don't want).

PeterWood
A blog about Gatekeeper from one of the Coda developers - http://www.panic.com/blog/2012/02/about-gatekeeper/
Arnold
Thank you!

james_nak
Uh oh, after realizing I needed to upgrade to the 2.78 sdk, I find myself without anything after paying with Paypal. Was there supposed to be another step? Usually one gets sent back to the site.

GrahamC
I think it usually comes as an email after a few days.  But who knows if anyone is monitoring things.
Endo
I think they will send in a few days. I bouhgt my sdk license this year too.
james_nak
OK, great. Thanks. You know what I was thinking.

james_nak
FYI, I received my sdk license. All is well.
Endo
Did you download SDK version 2.7.8, in the mail I received there was a link to 2.7.6.
james_nak
It was 2.7.8 and it had all the various OS's
ddharing
Well, that proves there is still someone at the helm. I haven't communicated with RT regarding the SDK since last year.

james_nak
Yes, there is someone there at the other end.  BTW, using 2.7.8 fixed all my issues.
Maxim
yes quite a few bugs fixed in 2.7.8   :-)

Henrik
When I run an encapped executable, I get the "Not enough memory" error. I remember seeing this before, but is it related to being unable to unpack the encapped source?
Henrik
rebooting windows helped.
Gregg
I haven't seen that in so long that I don't remember possible causes. I think there are values that cause problems when encapped, and also certain encap header values that can trigger it.

Maxim
serialized values get corrupted when encapped... which is why I had to rebuild my own prebol engine from scratch.  I also wrapp my main source within a string, to be sure that the encap app doesn't corrupt my code.
Gregg
Thanks Max.
Maxim
(forgot to mention that I just just DO that string, which is the whole encapped source.  basically equivalent to just running the script.)
so my script, once assembled looks like this:
rebol [ ... ]   ; put what you want in the header
#include mezz/...   ; whatever mezz code I need.
do { ... } ; the whole script, including results of my own extensive pre-processing toolchain
Gabriele
Henrik, that's usually (but not necessarily always) because of DECOMPRESS. REBOL just takes the last four bytes (IIRC) of the binary as the original size, and tries to allocate that much memory.
so, if REBOL can't find the encapped data correctly, the binary passed to DECOMPRESS will be wrong and is likely to cause that.
Henrik
Gabriele, yes I realize that now. I was simply wondering why one had to reboot windows in order to fix the problem.
Maxim
larger contiguous memory areas

Gabriele
well, the question is why was rebol failing at loading the encapped data.

Henrik
Are there any reported problems with enface.exe hanging, when trying to build a source file, where ENCAP: "" exists in the header?

Maxim
continuing from ~chit chat group...
guys... some of my code doesn't run when pre-processed.   I never use encap to pre-process it, I always run pre-rebol manually.  The result of this doesn't execute without errors.  
My version of pre-rebol even had MOLD replaced with MOLD/ALL and that created new bugs.   only using my string version of pre-processor, has the original code been able to be linked into one source without having execution bugs.
I also had to workaround the encap issue which automatically calls a pre-process on my linked file .
Why is everyone trying to tell me I'm not having these issues.  
I'm simply letting you guys know that block-based pre-processors mangle the data in some cases, and that string-based pre-propressing is safer (and much more flexible).    Note that my pre-processor uses load/next when it finds some keywords.
BrianH
The prebol preprocessor was designed to use MOLD. Just switching it to use MOLD/all isn't enough, you have to design it to use MOLD/all, the way Ladislav's include is. Also, even if you make your own MOLD/all safe prebol, the encapper still runs your code through the non-safe regular prebol as part of the encapping process, so it doesn't help. It is definitely possible to make a complex MOLD/all safe preprocessor, but I can't be sure that is what you did. The fact that you had bugs created by your preprocessor suggests not.
Maxim
my preprocessor wraps the code into a string so that the encapper's internal prebol can't touch it.
in effect the result of my engine is listed just above in the Sept 2 post  :-)
Ladislav
I guess, Max, that you never tried INCLUDE, did you?
Maxim
I actually did look at it.   I didn't go too far because the fact that what I saw it was loading the code, it woudn't have worked in the end.   parts of my code don't survive any kind of combination of LOAD/MOLD with or without  /ALL .
just doing so manually and trying to do the code results in error... part of pre-processing toolchain or not.
Ladislav
nevermind, I am not the one pushing you to try it. However, there are many potential users who don't even know they could use it, and only once they tried, they found out what the benefits were.
Maxim
I am sure its far superior to prebol in many ways.  It just doesn't provide extra features beyond what I already have in my toolchain.   note that the pre-processing bugs I have are with code which isn't using my normal toolchain.
its a 2 year mess of very complex code re-written and merged with prototypes, over and over (I've been working almost full time for a year simply cleaning it and organising it , without adding any new real features).
Ladislav
However, giving up on LOAD and MOLD(/all) you are actually losing one of the REBOL advantages - the metacircularity.
"It just doesn't provide extra features beyond what I already have in my toolchain." - I am pretty sure it does, you just don't know them
Maxim
I do use it, but curtailed and under control with LOAD/next only on the parts I need it to.
Ladislav
For example, does your toolchain offer you user-definable directives?
Maxim
well, my distribution manager is linked and runs within a rebol script, so I can actually perform any rebol trick on the source.
Ladislav
(in INCLUDE, all directives are "user-defined" in a sense)
Maxim
but anyhow... I have a different application model than most rebolers... so I don't require the exact same kind of toolchain as others.
Ladislav
Yes, that is a part of REBOL flexibility, you can use anything you like.
Maxim
The ability to build our own tools in a pretty small timeframe is one of REBOL's main features.
Ladislav
However, regarding the toolchain - I seriously recommend all users to try INCLUDE, otherwise they don't even know what they are missing.
Maxim
and I agree with this.
I know for a fact how hard you worked for it to be non-intrusive to other toolchains.
Ladislav
(many users have reimplemented their own version, but my version has probably the longest PITL usage, development and testing "tradition")
...and also it incorporates many ideas/advices from many sources, not just my own ideas
Ladislav
INCLUDE taught me that it really makes sense to maintain backward compatibility between R3 and R2, which is what BrianH is doing when backporting some R3 functions to R2.
Also, the INCLUDE is striving (successfully IMO) to "bridge the gap" between R3 and R2 by providing the same functionality in the same piece of code. Also, I bet it is much easier to have  it written in the "forward/backward" compatible manner than to need to maintain two different scripts.
DocKimbel
Ladislav: can INCLUDE now be used to run the same code both from sources and encapped, with no code change?
Ladislav
I am not completely sure what your question is, but we use it to:
1) run the code from the source
2) encap the above code as well, both at the same time
When I click on any file icon here, I usually use INCLUDE to run the code, in fact
(and preprocess it at the same time, if needed)
DocKimbel
I just mean enabling any REBOL app to run unchanged from sources (using DO) or encapped.
Ladislav
what is "encapped"? once encapped, it is just an .exe here
but, certainly, I use INCLUDE to run (e.g. when testing) any REBOL application otherwise needing preprocessing, i.e. such that even could not be run by DO; of course, such applications that can be run by DO can be run by INCLUDE as well
DocKimbel
Encapped: executable binary generated by /Encap.
Ladislav
Why would you want INCLUDE to run such application?
DocKimbel
Ok, let's try another way. :-) For a given REBOL app codebase that can be run with DO, can INCLUDE be used in such codebase to enable application preprocessing suitable for /Encap while letting it still be run using a simple DO?
Ladislav
INCLUDE can be used wherever DO can be used. I guess that answers your question.
Or maybe I am still missing what you are asking?
DocKimbel
Actually, what I would need would be an INCLUDE that can replace both DO and #include.
Ladislav
Yes, that is exactly what INCLUDE does
DocKimbel
Can it also replace LOAD and READ (and any other function that reads REBOL or data files from disk)?
Ladislav
LOAD: yes, you should give it a try, IMO
(you may find some other needs and suggest improvements, but I bet the basic functionality is there for you)
DocKimbel
Good, then I'll try it on some simple apps, if it works well enough, I'll be able to replace my own include system with it for bigger projects, like Cheyenne and Red.
Gregg
I use INCLUDE a lot, for both development runs and encapping. I just use different scripts to launch them. That is, I have a %_build.r that calls INLCUDE/LINK to produce an output script, then uses DO on that. %_encap.r, the CALLs encap and does other things like setting icon and version in the EXE.
Typos. %_encap.r calls INCLUDE/LINK, then CALLs encap...
DocKimbel
Ladislav: I just had a quick look at INCLUDE documentation, I still unsure if it can cover my needs. Let's take an example:
    REBOL [ ]
    do %lib/a.r
    do %lib/b.r
    app: context [...]
    app/run
How can I use INCLUDE there to make this script "encappable" (can be passed to Encap for generating an executable) while still being able to evaluate it with DO? Would the following code work?
    REBOL [ ]
     #include %include.r
    include %lib/a.r
    include %lib/b.r
    app: context [...]
    app/run
Gregg
Ladislav may have a different suggestion, but I've found that having build scripts works well for application oriented scripts, those that need to be encapped for deployment. For scripts that don't need to be encapped, I use INCLUDE directly, as you do above.
Though I use DO, not #INCLUDE in the latter case.
My build scripts also set a deployment target type that controls conditional includes and logic where needed. e.g., desktop vs rich 'net app vs plugin.
DocKimbel
Gregg: good point about DO, it should be rather:
    REBOL [ ]
    do %include.r           ;-- when run with DO
    #include %include.r     ;-- when passed to Encap
    include %lib/a.r
    include %lib/b.r
    app: context [...]
    app/run
Damn, no, `do %include.r` should be conditional, and disabled when encapping...
Ladislav
I use this form frequently:
REBOL [
    file: %myscript.r
]
    #include %lib/a.r
    #include %lib/b.r
    app: context [...]
    app/run
and evaluate it as follows:
include %myscript.r
also, this form is directly encappable
DocKimbel
The include system I use for all my apps that need to be encapped allows me to do this:
    # rebol -s %cheyenne.r
and
    # encap %cheyenne.r
Can INCLUDE provide similar feature? If yes, how can it be achieved in the easiest way? If not, what is the closest option INCLUDE can provide me?
Ladislav
Yes, that is very similar to what I use here
DocKimbel
Ladislav: in your above form, how do you deal with READ calls (for reading data files) in the application?
Ladislav
reading data files in the application? - you mean to be "in the application"?
(when encapped?)
DocKimbel
Both cases, when run and encapped.
Ladislav
yes, it is always both
DocKimbel
I mean, when encapped, such data file should be encapped too.
Ladislav
I can use either #include-binary or #include-string, etc. directives, or even the #do directive for something different
DocKimbel
When run with DO, it should be just read from disk.
Ladislav
it works using something like
# rebol -s %incl.r "%cheyenne.r"
actually, I do not write these #rebol -s %incl.r "...", I just click on the file
and to encap it, I use right-click
...and it does not work just in Windows, the same holds for Linux
DocKimbel
I run all my REBOL scripts using F10 key from my code editor (which launches "rebol -s" on the script), having to use a wrapper script won't fit well my way of working. F11 encaps the current script directly with /Pro, F12 encaps it with /CommandView. :-)
Ladislav
that is not a problem, why there is any problem in using rebol -s %incl instead of rebol -s?
DocKimbel
I guess I shouldn't be able to use %do on any such script from console anymore?
sorry: do instead of %do
Ladislav
just use INCLUDE
(it actually even finds the script for you, as opposed to DO which does not have a search capability)
for example, I write:
include %timblk.r
and do not care where the script is, since INCLUDE finds it for me
DocKimbel
How does it avoid collisions between similar script names in different include folders?
Gregg
It does mean relying on INCLUDE as a normal part of your workflow and approach, but I would have a hard time giving it up now.
You can use the #include-check directive to catch multiple includes, so your include-path gives you control.
Ladislav
it uses the INCLUDE-CTX/PATH search path variable, where the first found first served approach is used. Also, you can adjust your path at any time, which is being done by some scripts to "shrink" the search area
...and you can alway just write: INCLUDE-CTX/PATH: [%.] which uses only the current directory for search
Gregg
I would like to see INCLUDE be standard, perhaps with a refinment on DO (or just have it work that way by default), simply because INCLUDE doesn't imply execution the way DO does.
DocKimbel
Gregg: I use the same workflow for my REBOL work since 10 years...it's uneasy to change that, unless I can convince myself that the gains are worth the effort of changing the habits. :-)
Ladislav
Well, Gregg mentioned that he would not want to give up on INCLUDE because it saves time in a significant way
Gregg
I'm the same way. It took me a while to transition to INCLUDE, but I'm glad I did.
DocKimbel
Ladislav, last question: do you think it is possible (and desirable) to easily build INCLUDE features in R3 in a transparent way for the user? I mean that for example DO would intrinsicly use INCLUDE when having to access a file.
Gregg
How much benefit you see will depend on what you're building, too. My two main needs are apps that need to be encapped (often with different features whether for local use or as a rich 'net app), and scripts that comprise elements in larger systems, where there are common infrastructure elements and libraries, but scripts are run dynamically.
I think so, but I could be wrong. :-)
Put another way, is there a reason it couldn't?
In that scenario, I would think about how it would work in the wild, with resources made available on the 'net. An elegant integration of modules, INCLUDE, and public libraries would be a dream come true.
DocKimbel
I guess we could also overload DO in R2 to make INCLUDE usage almost transparent.
Gregg
Of course.
Ladislav
"Ladislav, last question: do you think it is possible (and desirable) to easily build INCLUDE features in R3 in a transparent way for the user? I mean that for example DO would intrinsicly use INCLUDE when having to access a file." - yes, that is possible.
GrahamC
Ladislav "that is not a problem, why there is any problem in using rebol -s %incl instead of rebol -s?"
This would have to be escaped for DOS
DocKimbel
I wonder why nobody did it yet then (overloading DO in R2 to add INCLUDE capabilities).
Gregg
Also, Doc, as far as hot keys from your editor, I do that too. And while it did take a change, I am now used to having a build script as an open file for a project, so I can exec that from the editor easily. Not perfect, but better than nothing.
Ladislav
hmm, I did not need to do it, INCLUDE %timblk.r is still much shorter than DO %/e/Ladislav/REBOL/timblk.r
DocKimbel
Gregg: did you find it annoying when working on small script that do not need INCLUDE features, or it is not a problem at all?
Gregg
There are a number of things I don't do in R2 simply to make it easier for others to use code I may post. Making it clear that INCLUDE is used is easier than "overload DO, and if you've changed DO yourself...)". I just say "Use INCLUDE. If you have a problem, tell Ladislav". :-)
It is a mental shift, and I still have some very small scripts that don't use it. Those are almost gone, because I almost always want library functions at some point, and I don't care about loading extra stuff locally.
Ladislav
"Gregg: did you find it annoying when working on small script that do not need INCLUDE features, or it is not a problem at all?" - let me answer your question as well: not a problem at all
Gregg
Even my small scripts just start with "do %paths.r" (or a variation for specific projects), which does all the setup.
Ladislav
If I do not need INCLUDE features I am still able to use INCLUDE to run the script (INCLUDE is able to run scripts not needing it)
Gregg
I also have a project generator that automatically creates all the build scripts and such for a new project.
DocKimbel
Thanks to both of you for the answers. I guess I will need to give it a deeper look and try it on some projects to see how it works for me.
Gregg
That's the best way. The hardest part was getting over the "no external dependencies" mindset for me.
Ladislav
My suggestion is: "always define standalone functions, etc. as standalone files, not cumulate things in one file" that way you are able to use everything as a building block for any new project
DocKimbel
That makes sense wrt features INCLUDE offers.
Ladislav
BTW, Gregg, did you consider to add some simple usage examples to
http://www.rebol.net/wiki/INCLUDE_documentation
?

Gregg
I haven't, but I may. May not happen soon as I have a number of things going on in the next few days.
Andreas
"I wonder why nobody did it yet then (overloading DO in R2 to add INCLUDE capabilities)."
I think because the more obvious solution is to actually bundle INCLUDE with the standard R2/R3 binaries.
I think Gregg has hit the nail on the head: one of the main reasons for _not_ using INCLUDE is a "no external dependencies" mindset. With INCLUDE being part of e.g. a standard R3 build, this mindset would be at ease.
BrianH
The "no external dependencies" thing isn't really as big a deal for R3, as long as they're optional, only used by people who need them. But still, the only reason that include wasn't part of the community library is because we haven't set one of those up yet.
BrianH
Ladislav's include has been the best candidate to be the new prebol for R3. It does basically the same thing without the bugs :)
BrianH
And more :)
Gabriele
"Why is everyone trying to tell me I'm not having these issues." - You're misunderstanding there, we're telling you WE never had those issues.
If you use Encap, you cannot use #[...] notation, that simply doesn't work. In the same way, if you evaluate stuff in your preprocessor, so that you expect to end up with real NONE! values in your blocks (for eg.), that won't work.

MarcS
Does anyone know whether there are plans to lower the SDK price?
Gregg
For R2? Doubtful anything will change. Cindy has an account here now, so your timing could be great, if she can provide authoritative info.
MarcS
Thanks for the info.

caelum
Unbelievably embarrassing. As a mostly Linux user, I have misplaced my Windows sdk license key purchased a few years ago and I cannot see an active email on Rebol.com to request a replacement. Does anyone know how I could contact them to request a replacement?
Gregg
Cindy is on this world now, you could send her a private message.
caelum
Ah, thanks Gregg, I'll do that.
GrahamC
they're the same as the linux one
one code works on all platforms as far as I know
BrianH
They didn't use to, they used to be separate. I used to have a Windows-only code, but they made it all-platform as a favor.
caelum
I'll try my linux key on a Windows machine and report what happens.
caelum
My Linux sdk license key does not work on Windows XP.
GrahamC
Interesting ...  my windows sdk license works with linux as I recall.  I bought both though.
caelum
I purchased and paid for the Linux and the Windows license keys at the same time and was sent two separate keys, one for each.

Bo
caelum: I sent Cindy a private message on our corporate AltME world because I know she checks that every day.  Hopefully, she'll get back to you soon.  She may be out of town tomorrow, though.  Waiting to hear back from her this evening.
caelum
Many thanks Bo.

amacleod
I added the line 'system/schemes/ftp/passive: on' to a script and it seemed to work fine but when I encapped it I got an error:
** Script Error: Invalid path value: ftp
** Near: system/schemes/ftp/passive: on
dump-obj: func [
    "Returns a block of information about an object."
    obj [object!...
I'm encapping with enface
amacleod
Never mind. I placed the line at the begining of script before including the sources...

Arnold
A new SDK buyer facing the same inactivity by RT problem on rebolforum.com topic  "No response from RT on Command SDK purchase???" Can you take care of the honours to inform Cindy, Bo?
SWhite
I noticed just today that the R2 SDK is available for Macintosh (so it says on rebol.com),  Does anyone know if it actually works?  I would think that a purchased version might be a little better than the free version, but I would hate to spend $250 to find out it doesn't.
Gregg
I don't think it will be any better, just adding SDK tools.
Bo
@Arnold: Just forwarded the message from RebolForum.com to Cindy about the Linux Command license.

Ashley
Are the SDK's still online? http://www.rebol.net/builds/sdk/ seems to have died.
Arnold
rebol.net has been down for a couple of weeks now

Maxim
hum... maybe Cindy should be alerted?
Bo
She has been. She said she talked to Carl about it the other night.

amacleod
rebol.net has been down quite a while now...this is bad. Carl has to give someone more active (less busy) access or release the site for someone else to manage.
amacleod
Comments on the blog articles do not seem to be working either
Bo
Agreed. I'm working on it every time I see him (about once every month or two).
amacleod
What's the best way to search a block of blocks for specific values. Is there a more efficient way other then looping through each block?
would key-value scheme make it easier?
Sorry wronk group

Maxim
anyone here have linux SDK building ability? or can give me a linux SDK download link... I need to encap stuff for linux.

NickA
I have a Linux SDK license, but haven't kept a Linux machine setup for a while.

Maxim
Can anyone tell me if they were able to change the CONSOLE's title text using the SDK, once encapped.
the encap header entry:
Encap: [title "new title"]
doesn't seem to work for me... for the console... it works for the view menues
I am able to change everything... even the console's menu items and application information for the system (icon->right-click->properties) but can't seem to get the damned Console window to change its label when it opens up with an error...
I can change the title AFTER its opened (using easy win32 commands), but when it opens because of an error (like missing memory ) It always has a
sorry for the red colored bg...
(blue bg)
It always ...  has a title of REBOL/Pro   :-(

DocKimbel
Have you tried changing the title from the resources section of the executable?
Maxim
yeah, but that didn't work... what I ended up doing is a text search/replace in the exe and that worked  ( just make sure you replace by the same number of bytes ;'-)
DocKimbel
I remember doing the same hack a long time ago too. ;-)
Maxim
Changing the resources did fix the highlights when hoving over the icon in the task bar and when looking at the apps properties.
using ResHacker to automate the process in my build engine.
NickA
I used to use the Windows API to change the title bar in free releases of R2.  You should be able to use this code to change the title bar of the console too:  http://www.rebol.org/view-script.r?script=no-rebol-in-title-bar.r
NickA
I also once made an AutoIT script to manage these sorts of things.  An old version of AutoIT had a tiny .dll which I'd include as binary encrypted data in my Rebol script, write it to disk, and then access it using Rebol's shared library interface:  http://re-bol.com/remove_rebol_title_orig.exe
Maxim
I have similar functions, its called set-console-title.  and position-console-window.    the above requires the window to already be open... my problem is that  the console opens up as part of an encap error. at that point rebol script is not running anymore...  :-(
NickA
The AutoIT script can run on it's own...
Endo
Yes, the only way is to use WinAPI but in some cases it makes your script crashes. So be careful.

Bo
I made a minimal AutoIT binding for R2 at one point. It's a great way to control MS Windows. However, ideally it would have more ability to read the current state of the UI to make it easier to automate in a reliable manner.

Maxim
can anyone tell me where the license file is supposed to be on linux?  rebpro keeps complaining that license key is missing.
I've put it in my home and in the cwd where I'm starting rebpro from... strange.
Maxim
>> exists? %license.key
== true
' 8-/
Kaj
Perhaps .rebol/ ?
Maxim
I think its the license itself.  Looks like its keyed to the platform.
I was certain I had a linux version of the license.  maybe not.

ddharing
I had a similar problem before. I was using the wrong license file.
Maxim
hi guys.   Since its not obvious I can still purchase a license of the SDK, I'm wondering if someone can share his Linux license with me.
I've got to encap stuff for Linux and it seems my SDK license doesn't work on linux.
Private Message me, if you've got a license you can lend me... thanks!!!

Marco
@Maxim For "encap stuff for Linux" you mean build a self-extracting executable or something more complex?

Maxim
I need to encap some of my server software on linux.

Marco
If someone is interested in a rebol-red/system program that does on Linux what XPackerX does on Windows, let me know.  I am not releasing it to the public since the code is not  "clean" and probably you have to tweak it a little.

NickA
Marco, I'd love to see that.

amacleod
I think I have an old version of the sdk. I see on the website a new version including command came out in 2010...I can't believe I never noticed this but I just tried packaged script that reads an htttps page which errors out. I assume that https was added to sdk at that time because current rebol view runs script fine.
Any way to get this sdk as the links are dead.
Also, it says the upgrade is free for those that purchased sdk within the year which I believe is my case...think that still is valid?

Maxim
everything related to the SDK seems to be dead.  I wish Carl just posted a public key with a download page for each supported platform.  they are getting outdated anyways, so they're not as cutting edge as they used to be.
Gregg
The king is dead, long live the king?

james_nak
It's been a real long time since I've compiled anything but for some reason my latest script and even older scripts produce this error when I click on the .exe file. Any ideas?
** Script Error: Cannot use path on none! value
** Where: insert-event-func
** Near: insert system/view/screen-face/feel/event-funcs :funct
:funct
** Press enter to quit...
The weirdness is that I have .exe files that I encapped previously that work perfectlt but when I tried to check to see if I encap them again,  they produce this error.
Endo
Possible reasons are:
1. You encap with 2.7.7, better to use 2.7.8.
2. You encap with an encapper which has no View capabilities, better to use encmdview.
3. The were some functions in your let's say rebol.r or user.r file which you #include, but now those files are changed and there are some missing functions.
james_nak
Thank you so much for your response Endo. This is such a mystery. I even get this with a one-line view statement (though it is tied to view in some way; a "hello world" to the console works). I've done all 3 of your suggestions including going back to 2.7.7 just to test. I can't figure out what it could be (obviously!) since I haven't changed anything to my knowledge. You know, it's old stuff that used to encap besides the simplicity of the one-liner test and the new app I originally tried. Anyway, I'll keep at it. Thanks.
james_nak
Dumb Dumb Dumb! I must have deleted the encmdview.exe tool.  You were right Endo (#2) I forgot there was a distinction between the encmd and the view one and since it was missing I didn't put 2 and 2 together. Luckily I saved the sdk zip files. Thanks, your answer spurred my thoughts.

Endo
You are welcome, glad it helped.

eFishAnt
can I get 2.7.8 SDK anywhere for Windows/Linux ?
I have working licenses.
eFishAnt
I only have SDK 2.7.6
Gregg
Unless there's some reason you *need* 2.7.8, best to stick with what works. CALL had some changes that might affect you.
eFishAnt
Gregg, I haven't used CALL for anything in my current products.  My hope is that the versions of security / auth are best and matched with 2.7.8 View, but I don't really know, but my Command license unlocks all the View 2.7.8 Command-like features, so my prototype system I *hope* matches the same version of SDK.

GrahamC
Pretty sure that you have to pay to upgrade from 2.7.6 to 2.7.8
except the page that does the upgrade payments is 500
eFishAnt
Graham Thanks!  I will send them a check if I can find the address.  I have bought everything REBOL has ever sold for money, I am pretty sure   0-o-o<   (the eFishAnt)
GrahamC
When you send the check, perhaps you could ask Carl to add UTC+13 to the Roku setup!

Bo
You can send the check to:
Cindy Sassenrath
245 E Perkins St
Ukiah, CA 95482
They are handling the license fees manually now. Make sure to include your contact info in case she has any questions.
GrahamC
This is really retro!  No email?  No paypal? How do people outside of the USA pay license fees?

Bo
GrahamC: Once I figure out from Cindy what is what, then we can figure out a way to accept payments via credit card/Bitcoin/etc.

amacleod
I have a script that runs fine using RebCmdview but when I encapp with encmdview I get an error trying to send email ussing prot-ssend.r and prot-esmtp.r
Here is the error:
** Access Error: Invalid port spec: scheme ssl host either all port/proxy/type
= generic generic bp port/proxy/host port/proxy/host: none...
** Where: open-proto
** Near: smtp-port: open [scheme: 'ssmtp]
either only
amacleod
Never mind. I was using encap helper script enlist.r and it was causing a problem.

Sergey
Is it possible today to purchase/obtain a license.key for the SDK?
At first there was a link "buy" on the page (https://web.archive.org/web/20200222193859/http://www.rebol.com:80/sdk.html), but when clicked, it gave a error 404, then it disappeared (https://web.archive.org/web/20200819043751/http://www.rebol.com/sdk.html). Requests via http://www.rebol.com/feedback.html went unanswered. It says here http://www.rebol.com/products.html that "These products are no longer available."  On http://www.rebol.com/command.html says "How to Purchase. No longer sold. Free download will be available from this website.". Can be download in SDK (http://www.rebol.com/downloads/v278/sdk/), but without the license.key and, accordingly, we get "*** License key is missing. Special features are not available." How cam be available "Special features"?
Gregg
It has been many years since anyone was able to get a Rebol SDK license.
GiuseppeC
Try to ask Rebol technology via contact form and keep us informed

Sergey
I have been trying for almost a year, but there is no answer, although the site was updated this year, so someone is working on it. I wonder why the key is still not in the public domain? It's a pity to lose wonderful software in time.

Last message posted 121 weeks ago.