NotVCS - A .vex unpacker and repacker!

  1. 3 months ago

    DarkMakesRobots

    Sep 9 Austin, TX 2158A

    Vex Coding Studio doesn't seem to be the ideal coding studio at the moment. Sure, it's a brand new thing, and it's going to have it's flaws, but another IDE wil usually just be better. But, what if you want to use the official API still?

    Well, I'm glad you asked. Introducing:

    NotVCS

    NotVCS is a python script that can extract and repack .vex files. Thats about all I have to say here. If you are interested in using it, it is available for free on this github repo.

    This software is still in it's early stages and will almost certainly be riddled with bugs. Please make backups of your vex files before using.

  2. theol0403

    Sep 9 Courtenay, BC, Canada 7842F

    I love it =).
    Useful for people who need version control or another IDE, but are somehow required to use VCS.
    Too bad it does not allow you to create multiple files within the .vex file, I guess VCS can only handle robot-config.h and main.cpp. It would be cool if it could repack automatically on file change and notify VCS to reload the file, though I would be surprised if that was possible.
    Nice work.

  3. DarkMakesRobots

    Sep 11 Austin, TX 2158A
    Edited 3 months ago by DarkMakesRobots

    Update:

    Beta 1.1 is out. New features:
    -Preprocessor mode - Allows actual multi-file support

    Please not that this beta may be buggy. Use preprocessor mode at your own risk.

  4. 2 months ago

    DarkMakesRobots

    Sep 14 Austin, TX 2158A

    Another Update is out:

    New features:

    • Auto-open VCS after precompiling with -o
    • Text at top of file to discourage editing after processing

    Still probably buggy. At the moment, Auto-open only works on Windows.

  5. 5 weeks ago

    DarkMakesRobots

    Nov 2 Austin, TX 2158A

    A new beta update for NotVCS, now VCS4CMD, has been released.

    I've been busy researching ways to compile and upload .cpp files from the command line without abandoning the official API. While, in it's current state, this requires both PROS and Vex Coding Studio to be installed, and this (https://gist.github.com/Dysproh/c3773484fc15794aa140475799a4d705 ) makefile to be in your Vex Coding Studio\sdk\user folder, it still has all of the features of the old NotVCS, which is also still available for download on my git repo. There is a possibility of not needing PROS to upload code to the robot at some point, but for now, that is the only way.

    Also, auto-open from the previous update now works on OSX.

  6. robonxt

    Nov 4 In a room where there are bots...

    Looks promising! Waiting for the day when it works with Visual Studio or some other IDEs.

  7. tabor473

    Nov 4 V5 Beta Tester OYES, WPI

    @robonxt Looks promising! Waiting for the day when it works with Visual Studio or some other IDEs.

    The post above means it should work in any IDE. And of course PROS already does.

  8. robonxt

    Nov 4 In a room where there are bots...

    @tabor473 The post above means it should work in any IDE. And of course PROS already does.

    I meant as a built-in plugin for VS. It would be nice to have it integrated with VS

  9. OscarMNOVA12

    Nov 4 Event Partner, V5 Beta Tester Northern VA and Pittsburgh MASON, 12, 22172

    I don't see Visual Studio getting enough use in this space to really warrant making a built in plugin for V5.

    Visual Studio Code, I've got an extension I made and use for PROS work. Not for VCS work.

  10. tabor473

    Nov 4 V5 Beta Tester OYES, WPI

    @OscarMNOVA12 I don't see Visual Studio getting enough use in this space to really warrant making a built in plugin for V5.

    Visual Studio Code, I've got an extension I made and use for PROS work. Not for VCS work.

    Judging by the dependency on pros I think @DarkMakesRobots still uses prosv5 make and prosv5 upload so the VS code extension would still work. Either that or be trivial to modify.

    The Cli nature of PROS makes plug-ins for IDEs trivial

  11. Edited 5 weeks ago by R47

    Hi, I'm getting an error when I attempt to unpack my program, I'm wondering if I'm doing something wrong. I navigate to my directory that my program and VCSCMD.py are in, then call

    python VCSCMD.py -u --file "Program 1".vex

    and receive the error

    Reading from file Program 1.vex
    Traceback (most recent call last):
      File "VCSCMD.py", line 121, in <module>
        with open('unpacked/vexfile_info.json', 'w', newline='') as csvFile:
    TypeError: 'newline' is an invalid keyword argument for this function

    Any idea what I'm doing wrong?

  12. DarkMakesRobots

    Nov 5 Austin, TX 2158A
    Edited 5 weeks ago by DarkMakesRobots

    I'm not sure whats going on there, though my guess would be that you might be using Python 2.x, while VCS4CMD requires Python 3.x.

    Run `python -V` to check python version.

    As for @tabor473 VCS4CMD uses PROS upload for now, since I haven't figured out how to upload directly. For now, I recommend using the `-po` option rather than `-l`, since it doesn't require PROS, and, while it isn't as automatic, it is far less buggy, since I haven't ironed out all of the bugs with command-line make and upload. However, it still uses VCS make and the VCS api when using `-l`.

  13. @DarkMakesRobots I'm not sure whats going on there, though my guess would be that you might be using Python 2.x, while VCS4CMD requires Python 3.x.

    Run `python -V` to check python version.

    As for @tabor473 VCS4CMD uses PROS upload for now, since I haven't figured out how to upload directly. For now, I recommend using the `-po` option rather than `-l`, since it doesn't require PROS, and, while it isn't as automatic, it is far less buggy, since I haven't ironed out all of the bugs with command-line make and upload. However, it still uses VCS make and the VCS api when using `-l`.

    Ahh, yes, that was my problem, I had to call python3 instead of python in the terminal. Thanks, I'm excited to see what I can do with this program!

  14. 4 weeks ago

    @DarkMakesRobots Update:

    Beta 1.1 is out. New features:
    -Preprocessor mode - Allows actual multi-file support

    Please not that this beta may be buggy. Use preprocessor mode at your own risk.

    where? where? where?

 

or Sign Up to reply!