1. zjes
  2. rope_py3k


Ali Gholami Rudi  committed 3459f0f


  • Participants
  • Parent commits 1d5f2f5
  • Branches trunk

Comments (0)

Files changed (7)

File README.txt

View file
  • Ignore whitespace
 * Generating python elements
-* Saving locations and texts
-* Adding `.ropeproject` folder
+* Memorizing locations and texts
+* Added `.ropeproject` folder
 * Saving history across sessions
 * Saving object data to disk
 * Incremental ObjectDB validation
 * Inlining `staticmethod`\s
+* Setting ignored resources patterns
+Maybe the most notable change in this release is the addition of a new
+folder in projects for holding configurations and other informations
+for a project.  Its default name is ``.ropeproject``, but it can be
+changed in ``~/.rope`` or `Project` constructor (if using rope as a
+library).  You can also force rope not to make such a folder by using
+`None` instead of a `str`.
+Currently it is used for these perposes:
+* There is a ``config.py`` file in this folder in which you can change
+  project configurations.  Look at the default ``config.py`` file,
+  that is created when there is none available, for more information.
+  When a project is open you can edit this file using ``"Edit Project
+  config.py"`` action or ``C-x p c``.
+* It can be used for saving project history, so that the next time you
+  open the project you can see and undo past changes.  If you're new
+  to rope use ``"Project History"`` (``C-x p h``) for more
+  information.
+* It can be used for saving object information.  Before this release
+  all object information where kept in memory.  Saving them on disk
+  has two advantages.  First, rope will need less memory and second,
+  the calculated and collected information is not thrown away each
+  time you close a project.
+You can change what to save and what not to in the ``config.py`` file.
+Since files on disk change overtime project object DB might hold
+invalid information.  Currently there is a basic incremental object DB
+validation that can be used to remove or fix out of date information.
+Rope uses this feature by default but you can disable it by editing
+``config.py``.  Other interesting features related to rope's object DB
+and object inference are planned for ``0.5`` release.  So if you're
+interested keep waiting!
+The generate element actions make python elements.  You have to move
+on an element that does not exist and perform one of these generate
+actions.  For example::
+  my_print(var=1)
+Calling generate function on `my_print` (``C-c n f``) will result in:
+  def my_print(var):
+      pass
+  my_print(var=1)
+It handle methods, static methods, classes, variables, modules, and
+packages, too.  Generate element actions use ``C-c n`` prefix.
+Rope can now save locations or strings in memory.  These are similar
+to emacs's bookmarks and registers.  These actions use ``C-x m``
 Getting Started

File docs/dev/done.txt

View file
  • Ignore whitespace
+> Public Release 0.5m4 : April 1, 2007
 - Incremental ObjectDB validation : March 31, 2007

File docs/dev/stories.txt

View file
  • Ignore whitespace
 * Moving `staticmethod`\s
-> Public Release 0.5m4 : April 1, 2007
+> Public Release 0.5m5 : April 15, 2007
+* Using a better object textual form

File docs/dev/workingon.txt

View file
  • Ignore whitespace
 Small Stories
-- Using MemoryObjectDB for unittests?
-- ``max_history_items`` config
-* Profiling and renaming random classes
-* Test on dos
 * Adding *clear objectdb* command
 * Inline fails when there is an arg mismatch
 * `sqlite3db`
+* Better UI; Performing refactorings on a separate thread
 * Multiple ropes on one project; problems for objectdb and history
 * Changing method to static method refactoring
 * Recursive SOI; Go where the calls go

File docs/index.txt

View file
  • Ignore whitespace
   * A dynamic object inference approach
   * A static object inference approach
   * Handling built-in container types
+  * Saving object information on disk
+  * Basic stored object data validation

File docs/user/overview.txt

View file
  • Ignore whitespace
 open/new project            C-x C-p        C-P
 close project               C-x p k
 show project tree           C-x p t        M-Q r
+edit project config         C-x p c
 validate project files      C-x p v        F5
+sync project to disk        C-x p s
 --------------------------  -------------  -------------
 new module                  C-x n m
 new package                 C-x n p

File ropetest/projecttest.py

View file
  • Ignore whitespace
     def test_project_creation(self):
-        self.assertTrue(os.path.samefile(self.project_root,
-                                         self.project.address))
+        self.assertEquals(os.path.abspath(self.project_root),
+                          os.path.abspath(self.project.address))
     def test_getting_project_file(self):
         project_file = self.project.get_resource(self.sample_file)
     def test_fscommands_and_ignored_resources(self):
         fscommands = _MockFSCommands()
         self.project = testutils.sample_project(
-            fscommands=fscommands, ignored_resources=['myfile.txt'])
+            fscommands=fscommands, ignored_resources=['myfile.txt'], ropefolder=None)
         myfile = self.project.get_file('myfile.txt')
         self.assertEquals('', fscommands.log)