Page 1 of 2
Capri 2.0 released
Posted: Wed Mar 11, 2015 6:31 am
by max
Heyho,
I've released the new major version of the Capri script, version 2.0.
This release features:
- project is split into parser & interpreter library, cli and support libraries
- native functions are loaded via shared libraries
- support for native arrays
- improved garbage collection
- major code refactoring, cleaner code, more portability
- many bugs have been fixed
- interactive mode for playing with features
- piped mode for piping scripts
- i've finally written a partial documentation of all the features on the website
Project website: http://capri.ghostkernel.org/
Any feedback is very welcome. If you want to participate in the development, found bugs or have any questions, tell me about them here or contact me at
[email protected].
Greets,
Max
Re: Capri 2.0 released
Posted: Wed Mar 18, 2015 9:30 am
by max
Version 2.1.0 is now available
- Lookup paths configurable via capri.properties
- Installation target added to build script
- A few bugs fixed
Capri can now be easily built and installed with the included shell script. See the
quick installation or the
building & installation page for more details.
Re: Capri 2.0 released
Posted: Fri Mar 20, 2015 12:51 pm
by zhiayang
Good work max!
2.x did break my existing scripts, and the documentation is a bit sparse (especially since I needed to fix some things, like targets), but otherwise great job!
Also, you finally have a proper domain (:
Re: Capri 2.0 released
Posted: Fri Mar 20, 2015 4:25 pm
by max
Thanks!
Sorry for breaking your scripts, but okay it's a major release, and I at least didn't change the entire syntax
(and I will not, don't worry)
I made the specialization statements (like "system windows"/"architecture x123") more generalized with "on system windows" etc. so it is easier to add custom specialization conditions when using the interpreter library in a third-party program. Also the parser is now more strict to some specific errors.
Happy to hear that you can make good use from it, I'll keep this thread up-to-date with further updates.
Re: Capri 2.0 released
Posted: Sat Mar 21, 2015 10:10 am
by zhiayang
Haha, breaking changes are always expected with a major release. Thankfully it didn't break too much.
One thing though, the error reporting might either be borked, or could be improved -- it would be nice to know which file the error occurred in.
I had an old Utilities.capri script, that I forgot to take into account -- I didn't "import File;", so it was erroring on that thing -- I spent a good 5 minutes trying to figure it out before realising it wasn't in my actual script...
Re: Capri 2.0 released
Posted: Mon Mar 30, 2015 8:42 pm
by eryjus
I see the source available for browsing on the official site, but do you have the source hosted on GitHub or something similar?
Re: Capri 2.0 released
Posted: Tue Mar 31, 2015 8:05 am
by max
eryjus wrote:I see the source available for browsing on the official site, but do you have the source hosted on GitHub or something similar?
Hey eryjus,
it is currently not publicly hosted on one of these sites. You can obtain the sources from the distribution archives.
If you want to contribute at the moment, feel free to send me
patches
Greets,
Max
Re: Capri 2.0 released
Posted: Wed Apr 15, 2015 1:55 am
by max
Version 2.1.1 is now available
- fixed bug in File.listFolder()
- IO.readln() added
- fixed a bug, dependency resolving must happen in task context
- build scripts use "bash" instead of "sh"
- fixed a bug where task declarations in projects would override those in global space
Download available on
the website.
Re: Capri 2.0 released
Posted: Wed Apr 15, 2015 5:53 am
by Muazzam
How can you say that it is better than Makefiles, build scripts or others? Can you write about it on your website (that why is Capri better)?
Re: Capri 2.0 released
Posted: Wed Apr 15, 2015 6:07 am
by Roman
cp: ../capri-cli/native/io.so: No such file or directory
...and some other similar errors.
Re: Capri 2.0 released
Posted: Thu Apr 16, 2015 12:08 am
by max
muazzam wrote:How can you say that it is better than Makefiles, build scripts or others? Can you write about it on your website (that why is Capri better)?
Hey muazzam,
I never said that it is better than make & other build scripts, but it is a proper alternative. It's easily portable with no 3rd-party dependencies, the scripts are write-once-run-everywhere (as far as you can reconcile your filesystem scripting) and you can do much more complex tasks with simpler code than you could ever do with makefiles. It is also built in modules and extendable with low effort, so you can not only use it as a build script, but also as for example your operating systems command interpreter.
Roman wrote:cp: ../capri-cli/native/io.so: No such file or directory
...and some other similar errors.
Hello Roman,
what exactly did you do, on what system? I'm always trying to make the build scripts as portable as possible, but it's not easy to cover every possible combination of environments
Thank you for the feedback!
Re: Capri 2.0 released
Posted: Fri Apr 17, 2015 8:09 am
by Roman
Code: Select all
MacBook-Pro-Roman:capri-cli roman$ ./build.sh all install
OS X Yosemite 10.10.3.
Re: Capri 2.0 released
Posted: Fri Apr 17, 2015 9:01 am
by zhiayang
Roman wrote:Code: Select all
MacBook-Pro-Roman:capri-cli roman$ ./build.sh all install
OS X Yosemite 10.10.3.
I've got to warn you, Apple screwed something up with 10.10.3 and the accompanying Xcode 6.3 + Command Line Tools.
I installed CLT 6.2 to get around some issues, perhaps you can try that?
Re: Capri 2.0 released
Posted: Fri Apr 17, 2015 1:42 pm
by max
requimrar wrote:Roman wrote:Code: Select all
MacBook-Pro-Roman:capri-cli roman$ ./build.sh all install
OS X Yosemite 10.10.3.
I've got to warn you, Apple screwed something up with 10.10.3 and the accompanying Xcode 6.3 + Command Line Tools.
I installed CLT 6.2 to get around some issues, perhaps you can try that?
Possibly a problem with this; also, what shell are you using? The scripts are made for bash.
Re: Capri 2.0 released
Posted: Fri Apr 17, 2015 1:57 pm
by Roman
max wrote:requimrar wrote:Roman wrote:Code: Select all
MacBook-Pro-Roman:capri-cli roman$ ./build.sh all install
OS X Yosemite 10.10.3.
I've got to warn you, Apple screwed something up with 10.10.3 and the accompanying Xcode 6.3 + Command Line Tools.
I installed CLT 6.2 to get around some issues, perhaps you can try that?
Possibly a problem with this; also, what shell are you using? The scripts are made for bash.
Code: Select all
MacBook-Pro-Roman:~ roman$ echo $BASH_VERSION
4.3.33(1)-release
The folder "native" doesn't even exist.