From: Samuele P. <ped...@us...> - 2001-06-13 20:44:36
|
Update of /cvsroot/jython/jython/org/python/core In directory usw-pr-cvs1:/tmp/cvs-serv14179 Modified Files: PyJavaPackage.java imp.java Log Message: Reverted to old semantic: from jpkg import * will filter out _foo named classes too. Rationale: the change broke the python guarantee (up to bad __all__ attr) that from import * will never clash with something named like _bar. from import * for a java_pkg is not production code stuff and the feature of getting _foo classes (rare beasts) too isn't important at all. Index: PyJavaPackage.java =================================================================== RCS file: /cvsroot/jython/jython/org/python/core/PyJavaPackage.java,v retrieving revision 2.12 retrieving revision 2.13 diff -C2 -r2.12 -r2.13 *** PyJavaPackage.java 2001/06/07 20:11:54 2.12 --- PyJavaPackage.java 2001/06/13 20:44:33 2.13 *************** *** 56,60 **** __dict__ = new PyStringMap(); ! // __dict__.__setitem__("__name__", new PyString(__name__)); ?? } --- 56,60 ---- __dict__ = new PyStringMap(); ! __dict__.__setitem__("__name__", new PyString(__name__)); } Index: imp.java =================================================================== RCS file: /cvsroot/jython/jython/org/python/core/imp.java,v retrieving revision 2.44 retrieving revision 2.45 diff -C2 -r2.44 -r2.45 *** imp.java 2001/06/04 10:42:59 2.44 --- imp.java 2001/06/13 20:44:33 2.45 *************** *** 626,639 **** getStarArg()); PyObject names; ! boolean filter = false; if (module instanceof PyJavaPackage) names = ((PyJavaPackage)module).fillDir(); else { PyObject __all__ = module.__findattr__("__all__"); ! if (__all__ != null) names = __all__; ! else { ! names = module.__dir__(); ! filter = true; ! } } --- 626,638 ---- getStarArg()); PyObject names; ! boolean filter = true; if (module instanceof PyJavaPackage) names = ((PyJavaPackage)module).fillDir(); else { PyObject __all__ = module.__findattr__("__all__"); ! if (__all__ != null) { ! names = __all__; ! filter = false; ! } else names = module.__dir__(); } |