taskSavannah Administration - Tasks: task #14085, Submission of Viua Virtual Machine

 
 

task #14085: Submission of Viua Virtual Machine

Submitter:  Marek Marecki <maelkum>
Submitted:  Tue 12 Jul 2016 07:50:13 PM UTC
   
 
Should Start On:  Mon 11 Jul 2016 10:00:00 PM UTC Should be Finished on:  Thu 21 Jul 2016 10:00:00 PM UTC
Category:  Project Approval Priority:  * 5 - Normal
Status:  Done Privacy:  Public
Assigned to:  hlam Open/Closed:  Closed
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Mon 18 Jul 2016 05:40:16 PM UTC, comment #9: 

Thank you, I think is's an important milestone for Viua to get approved on Savannah.

Happy hacking!

Marek Marecki <maelkum>
Mon 18 Jul 2016 03:58:48 PM UTC, comment #8: 

Project approved with thanks, sorry it took me this long to get to it.

-X- <hlam>
Fri 15 Jul 2016 10:46:34 PM UTC, comment #7: 

Karl,

I took care to ensure that is is clear under what license every part of code used in Viua is published (Hugh pointer out the places I missed).
All code I wrote is under GPL v3 or later; with explicit copyright and license notices in every file.
License information is also included in README for the project, and stated prominently on the website.

Linenoise is the only external dependency I have; its license (BSD) is stated in lib/README, and once again in lib/linenoise/README.
I added the information that Viua uses a patched version of linenoise to lib/README and under what license the patched version is provided, as you suggested.

URL to updated tarball: ftp://ftp.ozro.pw/software/viuavm/viuavm.savannah.2.tar.xz

Thanks,
M

Marek Marecki <maelkum>
Fri 15 Jul 2016 10:24:00 PM UTC, comment #6: 

Agreed that a copyright should not be made in your name.  But when you
modify the files from <upstream1> by applying a patch from <upstream2>,
that should be stated somewhere, at least in an accompanying README or
ChangeLog, and/or perhaps better at the beginning of the file itself:
"this is file xxx.c from linenoise, modifying by installing patch ppp
from wherever".

Also, the overall license of the library, including patches, should be
explicitly stated, again in lib/README (at least).

The whole point of all this license stuff we go through is to assure
anyone interested that code they get from Savannah is free software that
can be safely re-used, modified, re-distributed, according to the stated
licenses.  In contrast to most (all?) other repositories, where the
copyright status of most code is unclear and implicit only, at best.

Thanks,
K

Karl Berry <karl>
Site Administrator
Fri 15 Jul 2016 10:14:16 PM UTC, comment #5: 

Karl,

Yeah, the README solution makes sense.
I added lib/README.markdown file to the repository; it contains information about license, purpose in Viua VM, and a URL to the code of each external library I use (only linenoise at the moment).

As for the notices in linenoise files I patched: even the patches I included were written by other people, not me - I merely applied the patches, so there's nothing I can really copyright there.

URL to updated tarball: ftp://ftp.ozro.pw/software/viuavm/viuavm.savannah.1.tar.xz

Thanks for helping review my submission,
Marek.

Marek Marecki <maelkum>
Fri 15 Jul 2016 09:41:31 PM UTC, comment #4: 

Files copied unchanged from somewhere don't need to be modified purely to insert a copyright notice.  However, files that you changed anyway, by patching or in any other way, may as well have a copyright notice inserted also.

In addition, it would be good to make a statement that the files come from <wherever> as opposed to being originally written for your program.  Like item 2 in https://www.gnu.org/prep/maintain/maintain.html#External-Libraries, except without the "GNU", since this isn't a GNU package.

Hope that makes sense.  Let me know if questions/problems.
Thanks, Karl.

Karl Berry <karl>
Site Administrator
Fri 15 Jul 2016 03:35:47 PM UTC, comment #3: 

Hugh,

Here is the URL to a new tarball (is it necessary I build a tarball after each correction, or is updating code in repository sufficient?): ftp://ftp.ozro.pw/software/viuavm/viuavm.savannah.0.tar.xz

Regards,
Marek.

Marek Marecki <maelkum>
Fri 15 Jul 2016 02:49:49 PM UTC, comment #2: 

Hugh,

Thanks for taking your time to review my submission.

I'll update license notices in my files, and add the contact information (you didn't miss it, it's just not there).

As for the upstream files in the lib/ directory, there I have a problem.
I forked linenoise because I needed to merge some patches, and the original maintainer did not seem to work on the project anymore, but apart from that I did nothing - in fact, not a single line of code in linenoise is written by me.
I wouldn't like to add copyright notices to files I didn't edit; it just doesn't feel right to me.
Is lack of copyright notices in upstream library really an issue? The project clearly states its license in the first sentence of its README file.

Regards,
Marek.

Marek Marecki <maelkum>
Fri 15 Jul 2016 11:08:30 AM UTC, comment #1: 

Marek,

Thanks a lot for submitting.  I would have replied before but my
access to Savannah is pretty patchy here (Beijing) and network
flakiness ate my earlier detailed reply :-/

Some points:

  • it might be worth applying a license to the material in the doc/

  folder.

  • the following seem to be missing copyright notices:

- examples/*
- sample/asm/external/World.cpp, math.cpp, throwing.cpp
- scripts/*
- src/stdlib/viua/*
- tests/test.py
- tools/log-shortener.cpp.

  • it would be useful if you could put contact details somewhere in the

  source (sorry if I have missed this).

  • some of the upstream files in lib/ don't seem to have copyright

  notices; if this is the way they were received from upstream, maybe
  someone on the list could comment on whether this is an issue?

If you can look at the above, I will be happy to review again.

Best wishes

Hugh

-X- <hlam>
Tue 12 Jul 2016 07:50:13 PM UTC, original submission:  

A new project has been registered at Savannah
This project account will remain inactive until a site admin approves or discards the registration.


Registration Administration


While this item will be useful to track the registration process, approving or discarding the registration must be done using the specific Group Administration page, accessible only to site administrators, effectively logged as site administrators (superuser):



Registration Details


  • Name: Viua Virtual Machine
  • System Name:  viuavm
  • Type: non-GNU software and documentation
  • License: GNU General Public License v3 or later





Description:

Viua VM is virtual machine (as in "runtime environment"); something similar to a JVM, or the interpreter software at the heart of languages like Python, Ruby, or Lua. Differently from the mentioned VMs, though, Viua does not ship with a high-lever language front-end accompanying it.

Design of the VM goals are: predictability of program execution and resource usage (think RAII), concurrency, fine-grained control over software behaviour, and error-tolerancy. To achieve these goals, Viua provides a sort of "high-level assembly" to program the VM (it can also be targeted by compilers and other tools) giving programmers ultimate control over their software, and yet providing much of the tooling one would expect from modern ennvironment.

Some notable features of the VM are: nonblocking calls to foreign functions (offloaded to a special scheduler), message passing between VM-internal processes, separate compilation of bytecode modules, exception-based error handling (with semi-automatic process restarting), static and dynamic dispatch of functions, inter-function tail-calls for programs running on VM.

The implementation language is C++14 (as supported by latest GCC).


Other Software Required:

linenoise, BSD, https://github.com/antirez/linenoise


Tarball URL:

http://savannah.gnu.org/submissions_uploads/viuavm.savannah.tar.xz


Marek Marecki <maelkum>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by karl (Posted a comment)
  • -email is unavailable- added by hlam (Posted a comment)
  • -email is unavailable- added by maelkum (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Follow 4 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2016-07-18 hlam StatusWait reply Done
        Open/ClosedOpen Closed
    2016-07-15 hlam StatusNone Wait reply
        Assigned toNone hlam

    Back to the top

    Powered by Savane 3.13-4b48.
    Corresponding source code