Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Each UCOSP participant is asked to log all the steps they take as they make progress through the semester. This includes difficulties they faced (getting set up, 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.
Please record entries in reverse chronological order
Friday, March 16th, 2018
- Created a PR for both issues #1027 and #1028 which both pass all tests
Thursday, March 15th, 2018
- Worked for several hours to determine the cause of issue #1028. I have determined that the cause is with the JavaClassGenerator.java; specifically that the execution is sent to the
getDerived(line 5031) block when it should be sent to the
getDerivedCodeInjection(line 4999) block
- This is happening because the
customGetPostfixCode != nullwhich I believe means that
afterfunctionality must be present.
- The difficulty is that the Umple used to generate this class uses some funky syntax that I will have to figure out. Will work on this tomorrow.
Friday, March 9th, 2018
- Had a call with Dr. Lethbridge at 2PM to discuss the PR (which we merged) and what issues I should continue to work on. I will now be pursuing issues #1028 and #1029 which are very similar.
Thursday, March 8th, 2018
- Solved the problem and created a PR that solved issue #1002 but also refactored three very similar methods into one. I also performed a few small refactors to make code more readable.
- PR still had a minor issue I couldn't figure out, but was told how to fix it by Dr. Lethbridge and then everything was good.
Tuesday, March 6th, 2018
- Continued from previous day to determine why this was happening. Despite many trace throughs I found it very difficult to maintain all the variables and cause/effect in my mind.
- Emailed Dr. Lethbridge for assistance and heard back with good advice.
Monday, March 5th, 2018
- Worked for several hours to find where the methods are being added to the output code. Performed several trace-throughs to see how execution was happening
Tuesday, February 27, 2018
- Updated the method to return user-generated methods.
Monday, February 26, 2018
- Talked with Dr. Lethbridge at our weekly meeting about issue #1002. The issue is that
getMethods()under UmpleClass only returns generated methods, excluding user ones. We determined that we either need to rename the
getGeneratedMethodNames()or change its functionality so it does return all methods.
- I determined that this malfunction is likely an oversight than an intended function. It is also not widely used, so I will amend the functionality so it returns all methods.
Tuesday, February 20, 2018
- After extensive frustrated debugging, I decided to ditch my previous PR and start over. Thankfully the scope had been reduced, and it was a very small and easy PR to make. It was quickly merged.
- Determined that my initial diagnosis of issue #1002 was wrong. After conducting some analysis, I commented my new diagnosis. See comment for elaboration.
Saturday, February 10, 2018
- Determined the root cause of my failing tests on PR #1224. Some multi-language tests explicitly write the same class twice with the same method defined in many languages. Some of the languages have no method body in the first class, but define it in the second. This is exactly the kind of thing I was trying to eliminate with this PR, so I have asked for clarification. See cruise.umple/test/cruise/umple/compiler/015_multLanguageImplementation.ump for an example.
- Assigned myself #1002. This is the core issue preventing users from adding before/after methods to their own generated code.
- Determined the issue: a critical piece of the .ump code isn't being transferred over into the .java file, so the result becomes buggy. See my comment on the thread.
Friday, February 9, 2018
- Started looking into issue #1215
- Created a pull request, #1224, to fix issue #1215.
- This PR removes a section of code that ignores duplicate method definitions and instead attempts to add the method body from the second into the first.
Thursday, February 1, 2018
- Fixed a number of failing tests regarding my PR #1210
- Read through issue #958 and its discussion. I will likely take this issue on.
- I'm stumped by a failing test that seems to be happening in the testbed directory. I can't test it directly as it's outside the cruise.umple directory.
- Created issue #1215 and began working on it
Saturday, January 24, 2018
- Opened a PR for Issue #1191
- Realized that my PR doesn't completely solve the issue. I later created Issue #1215 for that
Sunday, January 18, 2018
- Nearly completed Issue #1191
Saturday, January 17, 2018
- Began working on Issue #1191, an issue with user code conflicting with API-Generated getters and setters
- Determined probable cause of the issue, and began to construct a fix for it
- Installed Eclipse and got the debugging tools working properly
Sunday, January 14, 2018
- Assigned myself Issue #1191
- Successfully completed all instructions in the DevelopmentSetUp page
- Read through the Philosophy and Vision, Best Practices, Contribution Process, and User Manual
- Read through pages on the official Umple page, like State Machines