Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Examine what is in tcalmant branch #41

Closed
22 of 24 tasks
Thrameos opened this issue May 25, 2019 · 2 comments
Closed
22 of 24 tasks

Examine what is in tcalmant branch #41

Thrameos opened this issue May 25, 2019 · 2 comments

Comments

@Thrameos
Copy link
Owner

Thrameos commented May 25, 2019

I believe tcalmant is mostly outdated and should run out of the box with our master, but I need to verify it.

Looking over the contents here the differences from the last branch point

  • adds eclipse /pycharm stuff (not of interest) .project .coverage? .pydevproject
  • adds a .gitignore
  • adds a License copy
  • adds a manifest.in
  • replaces readme
  • changes in examples
  • add isInterface
    • we covered that with isinstance(obj, JInterface)
  • changes _core.py
    • nothing here we haven't covered
  • adds cygwin search, darwin, linux, and windows
    • we have similar but minor differences
    • Seems to have two new functions get_boot_arguments and normalized_arguments.
      Not sure what these do. I have never needed them to run from cygwin.
  • Gui
    • This was removed in our branch
  • Changes to JArray, JClass, _jcollection, _jexception, _jwrapper, _properties, _keywords, _reflect
    • All stuff that we reworked or replaced already
    • minor changes in keywords
  • Differences in _jvmfinder with the normalize arguments
  • awt and swing stuff
    • we dropped these
  • Changes to native/common
    • bunch of const char* changes
    • range check on array
    • Mostly removal of dead code
  • added cygwin jni_md.h
    • We covered this I believe by added CYGWIN #ifdef to our copy
  • Changes to native/python
    • stuff to capsules. We replaced all this.
    • move resources into a class. We have gutted all this.
    • bytes/unicode stuff. All stuff we reworked.
  • Setup.py changes.
    • This is where largest differences. We rewrote ours as did tcalmant but in different directions.
    • Stuff for finding JDK. We don't require JDK to build anymore.
  • Rename from test to tests

Okay so next mark the stuff that we have covered.

@Thrameos
Copy link
Owner Author

Pulled the tests directory from tcalmant branch to ours to check functionality.

Only one difference between the branches. His version takes dictionary rather than dict for the name of the proxy.

@Thrameos
Copy link
Owner Author

Check for uses without macro in our code


-       self->ob_type->tp_free(o);
+       Py_TYPE(self)->tp_free(o);^M
 }

and

@@ -50,7 +50,15 @@ void JPArray::setRange(int start, int stop, vector<HostRef*>& val)
  ^M
  JPType* compType = m_Class->getComponentType();^M
  ^M
- int len = stop-start;^M
+ if(stop < start)^M
+ {^M
+   std::stringstream out;^M
+   out << "Slice start (" << start << ") is greater than stop ("^M
+     << stop << ")";^M
+   RAISE(JPypeException, out.str());^M
+ }^M
+^M
+ unsigned int len = stop-start;^M
  size_t plength = val.size();^M
  ^M

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant