UCOSPLogJamesZhao

Kevin Brightwell edited this page Aug 26, 2015 · 1 revision
Clone this wiki locally

Each UCOSP participant is asked to log all the difficulties they have getting set up to understand Umple. This includes understanding how to model in Umple, using UmpleOnline, code that is difficult to figure out, and development tools that are hard to figure out, or don't seem to work properly. The more log entries added the more we can better get a grip on the usability issues with Umple, and the more we can help future new contributors come up to speed.

Log entries

All Development is done under Mac OS X 10.7.2, using Eclipse Indigo.

March 08

  • The problem of translating line number from .java to .um file is need for parsing them.
  • Considering parsing only two files, or the methods of the function it should not be too hard
  • Right now consider all error occur in a method, will expand the scope later.
  • Wonder if there is a to use some of existing umple code to do .ump parsing
  • Hardest part is to locate the beginning of the current scope
  • Need a parser to return the current class, current method, current scope( like a block or within a while, if statement)

Feb 29

  • If we have a list of .java files, a simple thing to do is simply run javac on each .java file and get a bunch of .class files. It should not be the compiler's job to care if there is a public main function or starting point
  • Since java is normally executed using Java command with a public name the idea of linking does not exist with java
  • Compiler does not need to know what is the entry point for the program with Java
  • Cpp is going to be different need to involve linking and stuff
  • I think the direction will be to build the compiler components similar to the way code generator is structured, a separate component for each language.

Feb 25

  • Adding a simple system command to compile the out .java files into .class files

Feb 20

  • Fixed the grammar issue in output message Tim pointed out
  • Add the --override and --path to generate file
  • Added the corresponding test cases

Feb 15

  • Added the commandline generate feature, using option [-g|--generate]
  • Also added the corresponding tests
  • Will start to look at issue 193 (on Google Code)

Feb 02

  • Setup jopt-simple in eclipse, fixed the problem of defined types not getting resolved
  • Finished the option with usage, will print command line usage message with option --help
  • Start to look at specifying output language choice through command line.

Jan 25

  • Added a simple test for short and long form of --version option.
  • Adding feature to print out the usage message with --syntax option, or when wrong option is used, or when required arguments are missing.

Jan 24

  • jopt-parser included and simple --version setting is working, going to add more tests to UmpleConsoleMainTest for command line testing

Jan 21

  • Working on adding more options on command line compiler, to make it more like gcc
  • Start by add "--version" option, in UmpleConsoleMain
  • Added a const versionNumber variable to UmpleModle, a simple string set to the version number by @UMPLE_VERSION@
  • Had problem with running junit test in eclipse after running ant built, where almost all test failed. solved by doing ant -Dmyenv=local -f build.umple.xml template.resetVersion compile
  • Finished with --version, added a test for bad option checking
  • End goal is to make Umple options more like gcc, so complex options can happen, so this using jopt_parser http://pholser.github.com/jopt-simple/apidocs/joptsimple/OptionParser.html for option parsing.
  • added jar file into lib, adding classpath for jopt_simple in umple.classpath
  • Two parts to option passing, first setup the parser to get the proper options and value set. Then process the options by checking if each options exist, and perform different tasks for different options.

Jan 13

  • After the hangout session, I reinstalled the Eclipse with the Eclipse Modeling Tools version, instead of just the Eclipse classic. > > http://www.eclipse.org/downloads/packages/eclipse-modeling-tools/indigosr1
  • Used my old workspace which I had for Umple and installed xtext by: Help -> Install Modeling components -> check xtext and finish. Fellow through the install for xtext.
  • After install xtext, performed clean and rebuild. A error came up concerning META-INF in cruise.umple.xtext.ui, but was solved by doing a refresh. Then rebuild and everything work now!!!
  • Rerun all the junit and they are all passing
  • Reinstalling the Umple Eclipse plugin since I installed a new version of Eclipse. The fellowing error come up
  • For now I am going to start looking at issue 194 (on Google Code), and to start understanding the code.

Jan 11

**Looking at Issue 194 (on Google Code), want to start looking to this problem. But realized I don't know where to start.

  • Start to look at build.umple.xml to trace through how everything is compiled, and where all the components are.**

Jan 10

  • Tried Tim's advice and just compile in the command line

ant -Dmyenv=local -f build/build.umple.xml

build was successful and completed.

  • Going to try to use umple to compile some sample programs
  • Then start going through bug list see if I can start doing some playing around with code.
  • Working through DevelopmentSetUp wiki page, having trouble getting the project to build and test to run.
  • Downloaded revision 1155 (on Google Code) of umple, added the project into eclipse as instructed in DevelopmentSetup wiki. After finished step 4 in the wiki, I go use Umple to compile cruise.umple/src/Master.ump file, a error come up "Syntax error: Line: 13 Char:9"
  • Eclipse complained about cruise.umple.text/xtend-gen folder being missing, solved by making a empty xtend-gen folder
  • After building a lot of errors exist, such as

Couldn't resolve reference to ClassDefinition 'id'. 321_traceMultipleAttributeUntilCondition.ump

Most of which are Couldn't resolve reference to ClassDefinition ... errors.

I am guessing this is caused by some missing library file or something.

  • Tried to run the junit tests and to my surprise they all passed without any problem