version 0.73
[sepia.git] / ChangeLog
blobce8bf184e4db213aa05b78ffbe98816207134fef
1 2007-05-23  Sean O'Rourke  <sorourke@cs.ucsd.edu>
3         * lib/Sepia.pm (_apropos_re): handle empty completions.
4         (columnate): pretty-print ",who" output.
6         * sepia.el (sepia-complete-symbol): bury stale completions buffer;
7           suggested by Hilko Bengen.
9 2007-05-17  Sean O'Rourke  <sorourke@cs.ucsd.edu>
11         * lib/Sepia.pm (_completions1): Fix infinite recursion.
12         (repl): typo; clarify ambiguous vs. unrecognized shortcuts.
14 2007-05-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
16         * sepia.el (sepia-dwim): don't try to jump to location when
17           looking up module docs.
19         * lib/Sepia.pm: use $::__ instead of $Sepia::__
20         (repl_quit): new command.
21         (repl): add banner.
23 2007-05-12  Sean O'Rourke  <sorourke@cs.ucsd.edu>
25         * VERSION: 0.72
26         * Makefile.PL: add license.
28 2007-05-09  Sean O'Rourke  <sorourke@cs.ucsd.edu>
30         * VERSION: 0.71
31         * sepia.el (sepia-load-file): set inhibit-read-only when
32           displaying errors.
33         * lib/Sepia.pm (repl_methods): walk ISA hierarchy looking for
34           functions (XXX: this is much too coarse).
35         (repl_help): use %REPL_DOC to hold command documentation for
36         easier extension.
37         (repl): display error on canceled continued statement.
39 2007-05-07  Sean O'Rourke  <sorourke@cs.ucsd.edu>
41         * lib/Sepia.pm (repl_strict): add 'strict mode' (thanks to
42           Lexical::Persistence) for those who swing that way (I don't),
43           inspired by Devel::REPL.
44         (repl_wantarray): Fix logic.
46 2007-04-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
48         * VERSION: 0.70
49         * README: add license.
50         * Makefile.PL: remove dependency on Sub::Uplevel, make PadWalker
51           optional. 
52         * lib/Sepia.pm (who): add optional regex filter.
53         (debug_inspect): fix non-scalar printing.
54         * sepia.el (sepia-dwim): fix staleness; change to find
55           documentation for modules.
56         (sepia-find-module-file): new function to try sepia- and xref-
57         module file-finding functions.
58         (sepia-next): use it.
59         (sepia-filter-by-module,sepia-filter-by-all): remove.
60         (sepia-keymap): use `sepia-dwim' for M-.
62 2007-04-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
64         * lib/Sepia.pm (who): add optional regex argument.
66 2007-03-30  Sean O'Rourke  <sorourke@cs.ucsd.edu>
68         * sepia-w3m.el (sepia-module-list, sepia-package-list): added
69           detailed index of installed modules.
70         * VERSION: 0.68
72 2007-03-16  Sean O'Rourke  <sorourke@cs.ucsd.edu>
74         * sepia.el (sepia-set-found): filter spurious nils (XXX: this
75           really needs a fix).
76           (sepia-symbol-info): avoid eldoc errors in ecase.
78 2007-03-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
80         * sepia.el (sepia-complete-symbol): fallback completion of
81           builtins.
82         * set COPY_EXTENDED_ATTRIBUTES_DISABLE=true to avoid creating ._*
83           files (RT #25490).
85 2007-03-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
87         * VERSION: 0.67
88         * sepia-ido.el: clean up bitrot.
89         * lib/Sepia.pm (apropos): don't create new stashes during
90           completion.
91         * sepia.el (sepia-show-locations): bind inhibit-read-only; filter
92           out mysterious NILs.
93         * Makefile.PL: require PadWalker 1.0 (RT #25463)
95 2007-03-13  Sean O'Rourke  <sorourke@cs.ucsd.edu>
97         * VERSION: 0.66
98         * README (TODO): user-defined REPL abbrevs.
99         * lib/Sepia.pm (print_*): optional printing via YAML and
100           Data::Dump (from Shell::Perl).
101         (repl_wantarray): change eval context (same).
102         (repl_format): set formatter (same).
104 2007-03-09  Sean O'Rourke  <sorourke@cs.ucsd.edu>
106         * VERSION: 0.65
107         * sepia.el (sepia-keymap): add *-apropos, find-tag bindings.
108         * README: add organized function index.
109         * sepia.el (sepia-beginning-of-defun, sepia-end-of-defun):
110           fix argument to be prefix instead of point.
111         * sepia.el: documentation.
112         * sepia-ido.el: documentation.
113         * README: cleanup; note limitation of sepia-bodf and -eodf.
115 2007-02-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
117         * Makefile.PL: add Scalar::Util as prereq.
118         * sepia.el (sepia-perl5lib): new variable holding extra PERL5LIB
119           entry.
120         * sepia.el (sepia-init): use it.
121         * sepia.el (sepia-comint-setup): don't clobber keymap.
122         * sepia.el (sepia-indent-or-complete): complete first time if at
123           end of word.
124         * Sepia.pm (completions): enhanced completion -- e.g. "wtf"
125           matches "want_to_feed".
126         * Sepia.pm (printer): special-case PDL to use its stringification
127           (XXX: should test for overloaded "").
128         * Sepia.pm (who,repl_who): new functions.
130 2006-09-29  Sean O'Rourke  <sorourke@cs.ucsd.edu>
132         * Sepia.pm (Dump): wrap with eval to prevent unexpected exits.
133         * Sepia.pm (repl_chdir): expand '~' and '$HOME'
135 2006-07-01  Sean O'Rourke  <sorourke@cs.ucsd.edu>
137         * Sepia.pm (tolisp): undef -> nil
138         * sepia.el (sepia-eval-raw): guess package.
139         * sepia.el (sepia-init): don't pop-to-buffer with prefix argument.
140         * sepia.el (sepia-beginning-of-defun,sepia-end-of-defun): avoid
141           recursion.
142         * sepia.el (sepia-buffer-package): look backward from point
143           instead of forward from point-min.
145 2006-05-24  Sean O'Rourke  <sorourke@cs.ucsd.edu>
147         * Makefile.PL: added missing dependencies on PadWalker,
148           Sub::Uplevel.
149         * Sepia.pm: improved ",command"
150         * sepia-w3m.el (sepia-w3m-perldoc-this): simplify.
151         * sepia.el (perl-*): rename to sepia-*.
152         * sepia.el: reorg and cleanup.
153         * VERSION: 0.63
155 2006-05-19  Sean O'Rourke  <sorourke@cs.ucsd.edu>
157         * sepia.el: fixed eldoc support.  This only works with CVS Emacs,
158           relying on `eldoc-documentation-function'.  Also fixed pod
159           scanning for eldoc.
161 2006-05-18  Sean O'Rourke  <sorourke@cs.ucsd.edu>
163         * sepia.el, Sepia.pm: improved bulk-transfer protocol.
164         * Sepia.pm: override die with simple inspector/debugger.
165         * Sepia.pm: $__ and @__ now contain results of the last
166           expression.
167         * sepia.el, Sepia.pm: primitive support for evaluating elisp sent
168           from Perl.  Turn on comint-use-prompt-regexp because the fields
169           stuff is flaky with this.
170         * sepia.el, Sepia.pm: ",cd" shortcut coordinates directory with
171           Emacs.
172         * VERSION 0.61, 0.62
174 2006-04-14  Sean O'Rourke  <sorourke@cs.ucsd.edu>
176         * generic-repl.el: replaced by comint.
177         * all: removed EPL dependency.
178         * VERSION 0.59
180 2005-07-12  Sean O'Rourke  <sorourke@cs.ucsd.edu>
182         * sepia-w3m.el: fix function name so it's found.
183         * Xref.pm, Sepia.pm: cleanup and numerous bugfixes.
184         * Buffer.pm: new, but not ready for prime-time
185         * sepia.el: delete-thing-at-point removed; misc bugfixes.
186         * test.pl: disabled a bunch of location stuff.
187         * VERSION 0.58
189 2004-09-10  Sean O'Rourke  <sorourke@cs.ucsd.edu>
191         * test.pl: some real tests.
192         * Sepia.pm, Xref.pm: Separate simple symbol-table searching from
193           Xref, making the former more reliable.
194         * Xref.pm: More reliable detection of (class) method calls.
195         * sepia.el: results are not displayed for expressions ending in
196           ';' (c.f. Octave).
198 2004-04-12  Sean O'Rourke  <seano@cs.ucsd.edu>
200         * sepia.el (sepia-doc-scan-buffer): Make regular expressions a
201         bit better.
202         (sepia-ident-at-point): handle upper-case function and variable
203         names for completion (a bit hacky...).
204         (sepia-install-keys): fix keymap installation.
206 2004-04-11  Sean O'Rourke  <seano@cs.ucsd.edu>
208         * Xref.pm (guess_module_file): do like Module::Info and trust
209         %INC more than our Xref info.  But don't be _too_ smart about
210         this -- we were picking up lots of bogus exports.
211         (pp_method_named): add support for constant-named methods (cribbed
212         from B::Concise).
214 2004-04-10  Sean O'Rourke  <seano@cs.ucsd.edu>
216         * Xref.pm: update $VERSION to track Sepia release.
218         * sepia.el (sepia-indent-or-complete): only complete on the
219         second TAB.
221 2004-04-09  Sean O'Rourke  <seano@cs.ucsd.edu>
223         * sepia.el (sepia-refiner): tweak refining function a bit more.
224         I'm still not entirely happy with this, but it's getting better.
225         Time and experimentation are required.
227         * sepia-tree.el (sepia-calle[er]-tree): New file.  Use
228         caller/callee information to generate tree-view using David
229         Ponce's wonderful tree-widget.
231         * Xref.pm (_apropos_re): Add that Emacs-style multipart-word
232         completion, so e.g. D:v_d -> Devel::Xref::var_defs.  It's groovy,
233         man.
234         (%firstline): gone.  Just getting a line within the sub is good
235         enough -- we can fix it on the Emacs side of the fence later.
237 2004-04-08  Sean O'Rourke  <seano@cs.ucsd.edu>
239         * sepia-w3m.el (sepia-w3m-perldoc-this): work for functions as
240         well as modules, and try to go to correct position in manpage.
242         * sepia.el (sepia-eval-buffer): use 'BEGIN{ die }' to do Xrefs
243         for scripts without loading them.
245         * Xref.pm: Localize a bunch of things instead of stomping on
246         package lexicals.  This makes the module better handle repeated
247         use, for which it wasn't designed.
248         
249         * Xref.pm (mod_subs): Rename package_subs for consistency.
250         (mod_decls): New function to generate decls for evaluation.
252         * sepia.el: misc bug-fixes, and better support for redefining
253         functions with sepia-eval-defun, especially preserving files and
254         line numbers.
255         (sepia-eval): remove newlines to make line-numbers make more
256         sense to user.
257         (sepia-interactive-arg): delay reading completions to speed up
258         \M-. functions.
259         (sepia-refiner): search both forward and backward, to adjust for
260         e.g. adding comments.  Still not so good, but better.
262 2004-04-06  Sean O'Rourke  <seano@cs.ucsd.edu>
264         * sepia-w3m.el: moved w3m-perldoc support here.
266         * README: added description, removed disclaimer
268         * sepia.el (sepia-symbol-info, sepia-doc-update): POD scanning
269         and cperl hackage for eldoc support.
271 2004-04-05  Sean O'Rourke  <seano@cs.ucsd.edu>
273         * Xref.pm (redefined,forget): make them take a single sub at a
274         time, and pay attention to packages.
275         (_apropos): use package info to narrow choices.
277         * sepia.el (sepia-eval-defun,sepia-eval-buffer): new functions.
279         * test.pl: satisfy the cpants Fascists.
280         
281         * Xref.pm (use_type): try to be smarter about when something's
282         being assigned to, vs. merely used as a reference.
284         * sepia.el (sepia-repl-header): keep up with generic-repl by
285         doing header line, working dir.
286         (sepia-complete-symbol): stupid bug with modules.
287         (sepia-install-keys): new function.
288         (sepia-var-assigns): assignments are more useful than defs.
289         (sepia-init): start REPL by default.
291         * generic-repl.el (repl-cd,repl-set-header): "new" function from
292         Slime to track working dir, update header line.
294 2004-04-04  Sean O'Rourke  <seano@cs.ucsd.edu>
296         * Sepia.jpg: don't ask -- just look.
297         
298         * sepia.el (sepia-ident-at-point): fixed bug with sigils.
299         (sepia-complete-symbol): fixed bug with undefined function
300         sepia-end-of-word.  
301         Always use Data::Dumper.
303         * any-repl.el: new file implementing REPL, basically stolen from
304         Slime.
306         * pscope.el: renamed to sepia.el to go with name change.
308 2004-04-03  Sean O'Rourke  <seano@cs.ucsd.edu>
310         * pscope.el (pscope-set-found): remove locations with no
311         file in package "main", which were causing errors before.
312         (pscope-dwim): new function.  New functions
313         pscope-complete-symbol and pscope-indent-or-complete for
314         symbol completion.  Not well-tested, but they seem to work.
315         The most annoying thing is that since the Xref db isn't
316         automatically updated, it won't always know as much as you
317         expect.
318         (pscope-load-file): new function.
320         * Xref.pm: update export lists to reflect new functions.
322 2004-04-02  Sean O'Rourke  <seano@cs.ucsd.edu>
324         * Xref.pm: minor cleanup.
326         * pscope.el: pass module, file, line to Perl side (where it's
327         ignored for now); fix line number refinement to be a
328         little less over-eager; fix pscope-callees to go to sub
329         definitions instead of call sites.
330         
331         * README: added TODO section.