ChangeLog 838 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>

	* emacs-lisp/eieio-generic.el: New file.
	* emacs-lisp/eieio-core.el: Move all generic function code to
	eieio-generic.el.
	(eieio--defmethod): Declare.
	* emacs-lisp/eieio.el: Require eieio-generic.  Move all generic
	function code to eieio-generic.el.
	* emacs-lisp/eieio-opt.el (eieio-help-generic): Move to
	eieio-generic.el.
	* emacs-lisp/eieio-datadebug.el (eieio-debug-methodinvoke): Update call
	to eieio--generic-call.
	* emacs-lisp/eieio-base.el (eieio-instance-inheritor): Don't use
	<class>-child type.

16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
2015-01-07  Stefan Monnier  <monnier@iro.umontreal.ca>

	* emacs-lisp/chart.el (chart-add-sequence, chart-bar-quickie):
	Don't use <class> as a variable.

	* emacs-lisp/eieio.el (same-class-p): Accept class object as well.
	(call-next-method): Simplify.
	(clone): Obey eieio-backward-compatibility.

	* emacs-lisp/eieio-opt.el (eieio-read-generic-p): Remove.
	(eieio-read-generic): Use `generic-p' instead.

	* emacs-lisp/eieio-core.el (eieio-backward-compatibility): New var.
	(eieio-defclass-autoload): Obey it.
	(eieio--class-object): Improve error behavior.
	(eieio-class-children-fast, same-class-fast-p): Remove.  Inline at
	every use site.
	(eieio--defgeneric-form-primary-only): Rename from
	eieio-defgeneric-form-primary-only; update all callers.
	(eieio--defgeneric-form-primary-only-one): Rename from
	eieio-defgeneric-form-primary-only-one; update all callers.
	(eieio-defgeneric-reset-generic-form)
	(eieio-defgeneric-reset-generic-form-primary-only)
	(eieio-defgeneric-reset-generic-form-primary-only-one): Remove.
	(eieio--method-optimize-primary): New function to replace them.
	(eieio--defmethod, eieio-defmethod): Use it.
	(eieio--perform-slot-validation): Rename from
	eieio-perform-slot-validation; update all callers.
	(eieio--validate-slot-value): Rename from eieio-validate-slot-value.
	Change `class' to be a class object.  Update all callers.
	(eieio--validate-class-slot-value): Rename from
	eieio-validate-class-slot-value.  Change `class' to be a class object.
	Update all callers.
	(eieio-oset-default): Accept class object as well.
	(eieio--generic-call-primary-only): Rename from
	eieio-generic-call-primary-only.  Update all callers.

	* emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
	Improve error messages.
	(eieio-persistent-slot-type-is-class-p): Handle `list-of' types, as
	well as user-defined types.  Emit errors for legacy types like
	<class>-child and <class>-list, if not eieio-backward-compatibility.

59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123
2015-01-05  Stefan Monnier  <monnier@iro.umontreal.ca>

	* emacs-lisp/eieio.el (eieio-class-parents): Accept class objects.
	(eieio--class-slot-initarg): Rename from class-slot-initarg.
	Change `class' arg to be a class object.  Update all callers.
	(call-next-method): Adjust to new return value of `eieio-generic-form'.
	(eieio-default-superclass): Set var to the class object.
	(eieio-edebug-prin1-to-string): Fix recursive call for lists.
	Change print behavior to affect class objects rather than
	class symbols.

	* emacs-lisp/eieio-core.el (eieio-class-object): New function.
	(eieio-class-parents-fast): Remove macro.
	(eieio--class-option-assoc): Rename from class-option-assoc.
	Update all callers.
	(eieio--class-option): Rename from class-option.  Change `class' arg to
	be a class object.  Update all callers.
	(eieio--class-method-invocation-order): Rename from
	class-method-invocation-order.  Change `class' arg to be a class
	object.  Update all callers.
	(eieio-defclass-autoload, eieio-defclass): Set the `parent' field to
	a list of class objects rather than names.
	(eieio-defclass): Remove redundant quotes.  Use `eieio-oref-default'
	for accessors to class allocated slots.
	(eieio--perform-slot-validation-for-default): Rename from
	eieio-perform-slot-validation-for-default.  Update all callers.
	(eieio--add-new-slot): Rename from eieio-add-new-slot.
	Update all callers.  Use push.
	(eieio-copy-parents-into-subclass): Adjust to new content of
	`parent' field.  Use dolist.
	(eieio-oref): Remove support for providing a class rather than
	an object.
	(eieio-oref-default): Prefer class objects over class names.
	(eieio--slot-originating-class-p): Rename from
	eieio-slot-originating-class-p.  Update all callers.  Use `or'.
	(eieio--slot-name-index): Turn check into assertion.
	(eieio--class-slot-name-index): Rename from
	eieio-class-slot-name-index.  Change `class' arg to be a class object.
	Update all callers.
	(eieio-attribute-to-initarg): Move to eieio-test-persist.el.
	(eieio--c3-candidate): Rename from eieio-c3-candidate.
	Update all callers.
	(eieio--c3-merge-lists): Rename from eieio-c3-merge-lists.
	Update all callers.
	(eieio--class-precedence-c3): Rename from eieio-class-precedence-c3.
	Update all callers.
	(eieio--class-precedence-dfs): Rename from eieio-class-precedence-dfs.
	Update all callers.
	(eieio--class-precedence-bfs): Rename from eieio-class-precedence-bfs.
	Update all callers.  Adjust to new `parent' content.
	(eieio--class-precedence-list): Rename from -class-precedence-list.
	Update all callers.
	(eieio-generic-call): Use autoloadp and autoload-do-load.
	Slight simplification.
	(eieio-generic-call, eieio-generic-call-primary-only): Adjust to new
	return value of `eieio-generic-form'.
	(eieiomt-add): Index the hashtable with class objects rather than
	class names.
	(eieio-generic-form): Accept class objects as well.

	* emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
	Adjust to new convention for eieio-persistent-validate/fix-slot-value.
	(eieio-persistent-validate/fix-slot-value):
	Change `class' arg to be a class object.  Update all callers.

124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151
2014-12-29  Stefan Monnier  <monnier@iro.umontreal.ca>

	* emacs-lisp/eieio.el (child-of-class-p): Make it accept class objects
	additionally to class names.

	* emacs-lisp/eieio-core.el (eieio--with-scoped-class): Use let-binding.
	(object): Remove first (constant) slot; rename second to `class-tag'.
	(eieio--object-class-object, eieio--object-class-name): New funs
	to replace eieio--object-class.
	(eieio--class-object, eieio--class-p): New functions.
	(same-class-fast-p): Make it a defsubst, change its implementation
	to check the class objects rather than their names.
	(eieio-object-p): Rewrite.
	(eieio-defclass): Adjust the object initialization according to the new
	object layout.
	(eieio--scoped-class): Declare it returns a class object (not a class
	name any more).  Adjust calls accordingly (along with calls to
	eieio--with-scoped-class).
	(eieio--slot-name-index): Rename from eieio-slot-name-index and change
	its class arg to be a class object.  Adjust callers accordingly.
	(eieio-slot-originating-class-p): Make its start-class arg a class
	object.  Adjust all callers.
	(eieio--initarg-to-attribute): Rename from eieio-initarg-to-attribute.
	Make its `class' arg a class object.  Adjust all callers.

	* emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
	Use eieio--slot-name-index rather than eieio-slot-name-index.

152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185
2014-12-23  Stefan Monnier  <monnier@iro.umontreal.ca>

	* emacs-lisp/eieio.el (make-instance): Simplify by not adding an object
	name argument.
	(eieio-object-name): Use eieio-object-name-string.
	(eieio--object-names): New const.
	(eieio-object-name-string, eieio-object-set-name-string): Re-implement
	using a hashtable rather than a built-in slot.
	(eieio-constructor): Rename from `constructor'.  Remove `newname' arg.
	(clone): Don't mess with the object's "name".

	* emacs-lisp/eieio-custom.el (eieio-widget-test): Remove dummy arg.
	(eieio-object-value-get): Use eieio-object-set-name-string.

	* emacs-lisp/eieio-core.el (eieio--defalias): Follow aliases.
	(eieio--object): Remove `name' field.
	(eieio-defclass): Adjust to new convention where constructors don't
	take an "object name" any more.
	(eieio--defgeneric-init-form, eieio--defmethod): Follow aliases.
	(eieio-validate-slot-value, eieio-oset-default)
	(eieio-slot-name-index): Don't hardcode eieio--object-num-slots.
	(eieio-generic-call-primary-only): Simplify.

	* emacs-lisp/eieio-base.el (clone) <eieio-instance-inheritor>:
	Use call-next-method.
	(eieio-constructor): Rename from `constructor'.
	(eieio-persistent-convert-list-to-object): Drop objname.
	(eieio-persistent-validate/fix-slot-value): Don't hardcode
	eieio--object-num-slots.
	(eieio-named): Use a normal slot.
	(slot-missing) <eieio-named>: Remove.
	(eieio-object-name-string, eieio-object-set-name-string, clone)
	<eieio-named>: New methods.

186 187 188 189 190 191 192 193 194
2014-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>

	* emacs-lisp/eieio-core.el (eieio--class-v): Rename from class-v.
	(method-*): Add a "eieio--" prefix to those constants.

	* emacs-lisp/eieio.el: Move edebug specs to the corresponding macro.

	* emacs-lisp/eieio-speedbar.el: Use lexical-binding.

195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234
2014-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>

	* emacs-lisp/eieio.el (child-of-class-p): Fix case where `class' is
	`eieio-default-superclass'.

	* emacs-lisp/eieio-datadebug.el: Use lexical-binding.

	* emacs-lisp/eieio-custom.el: Use lexical-binding.
	(eieio-object-value-to-abstract): Simplify.

	* emacs-lisp/eieio-opt.el (eieio-build-class-list): Use cl-mapcan.
	(eieio-build-class-alist): Use dolist.
	(eieio-all-generic-functions): Adjust to use of hashtables.

	* emacs-lisp/eieio-core.el (class): Rename field symbol-obarray to
	symbol-hashtable.  It contains a hashtable instead of an obarray.
	(generic-p): Use symbol property `eieio-method-hashtable' instead of
	`eieio-method-obarray'.
	(generic-primary-only-p, generic-primary-only-one-p):
	Slight optimization.
	(eieio-defclass-autoload-map): Use a hashtable instead of an obarray.
	(eieio-defclass-autoload, eieio-defclass): Adjust/simplify accordingly.
	(eieio-class-un-autoload): Use autoload-do-load.
	(eieio-defclass): Use dolist, cl-pushnew, cl-callf.
	Use new cl-deftype-satisfies.  Adjust to use of hashtables.
	Don't hardcode the value of eieio--object-num-slots.
	(eieio-defgeneric-form-primary-only-one): Remove `doc-string' arg.
	Use a closure rather than a backquoted lambda.
	(eieio--defmethod): Adjust call accordingly.  Set doc-string via the
	function-documentation property.
	(eieio-slot-originating-class-p, eieio-slot-name-index)
	(eieiomt--optimizing-hashtable, eieiomt-install, eieiomt-add)
	(eieio-generic-form): Adjust to use of hashtables.
	(eieiomt--sym-optimize): Rename from eieiomt-sym-optimize; take
	additional class argument.
	(eieio-generic-call-methodname): Remove, unused.

	* emacs-lisp/eieio-base.el (eieio-persistent-slot-type-is-class-p):
	Prefer \' to $.

235 236 237 238 239 240 241 242 243 244 245 246 247
2014-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>

	* completion.el: Use post-self-insert-hook (bug#19400).
	(completion-separator-self-insert-command)
	(completion-separator-self-insert-autofilling): Remove.
	(completion-separator-chars): New var.
	(completion-c-mode-hook, completion-setup-fortran-mode): Use it instead
	of changing the keymap.
	(completion--post-self-insert): New function.
	(dynamic-completion-mode): Use it instead of rebinding keys.
	(cmpl--completion-string): Rename from completion-string.
	(add-completion-to-head, delete-completion): Let-bind it explicitly.

Bozhidar Batsov's avatar
Bozhidar Batsov committed
248 249 250 251 252
2014-12-22  Bozhidar Batsov  <bozhidar@batsov.com>

	* progmodes/ruby-mode.el (ruby--string-region): Simplify code
	by leveraging `syntax-ppss'.

253 254 255 256
2014-12-22  Artur Malabarba  <bruce.connor.am@gmail.com>

	* let-alist.el (let-alist): Use `make-symbol' instead of `gensym'.

257 258 259 260
2014-12-20  Michael Albinus  <michael.albinus@gmx.de>

	* net/tramp-sh.el (tramp-histfile-override): Add :version.

261 262 263 264
2014-12-20  Teodor Zlatanov  <tzz@lifelogs.com>

	* net/tramp-sh.el (tramp-histfile-override): Clarify docstring.

265 266 267 268 269
2014-12-19  Artur Malabarba  <bruce.connor.am@gmail.com>

	* let-alist.el (let-alist): Enable access to deeper alists by
	using dots inside the dotted symbols.

270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285
2014-12-19  Alan Mackenzie  <acm@muc.de>

	Make C++11 uniform init syntax work.  New keywords "final" and "override"

	* progmodes/cc-engine.el (c-back-over-member-initializer-braces):
	New function.
	(c-guess-basic-syntax): Set `containing-sex' and `lim' using the
	new function.

	* progmodes/cc-fonts.el (c-font-lock-declarations): Check more
	carefully for "are we at a declarator?" using
	c-back-over-member-initializers.

	* progmodes/cc-langs.el (c-type-modifier-kwds): include "final"
	and "override" in the C++ value.

286 287 288 289 290
2014-12-19  Martin Rudalics  <rudalics@gmx.at>

	* textmodes/ispell.el (ispell-command-loop): Don't use
	`next-window'.

Lars Ingebrigtsen's avatar
Lars Ingebrigtsen committed
291 292 293 294 295
2014-12-21  Lars Ingebrigtsen  <larsi@gnus.org>

	* net/nsm.el (nsm-save-host): Don't save the host name twice
	(bug#19269).

296 297 298 299 300 301 302 303 304 305 306 307 308 309
2014-12-18  Sam Steingold  <sds@gnu.org>

	Keyboard interface (C-f10) to `mouse-buffer-menu' (C-down-mouse-1).
	* mouse.el (mouse-buffer-menu-map): Extract from `mouse-buffer-menu'.
	(mouse-buffer-menu): Use `mouse-buffer-menu-map'.
	* menu-bar.el (menu-bar-buffer-vector): Extract from
	`menu-bar-update-buffers'.
	(menu-bar-update-buffers): Use `menu-bar-buffer-vector'.
	(buffer-menu-open): New user command, bound globally to C-f10,
	provides a keyboard interface to `mouse-buffer-menu' (C-down-mouse-1).
	(mouse-buffer-menu-keymap): Use `menu-bar-buffer-vector' to
	convert the value returned by `mouse-buffer-menu-map' to a list
	acceptable to `popup-menu' for `buffer-menu-open'.

310 311 312 313 314
2014-12-18  Artur Malabarba  <bruce.connor.am@gmail.com>

	* let-alist.el (let-alist): Evaluate the `alist' argument only
	once.

Sam Steingold's avatar
Sam Steingold committed
315 316 317 318
2014-12-18  Sam Steingold  <sds@gnu.org>

	* emacs-lisp/package.el: Avoid compilation warning by declaring
	the `find-library-name' function.
319 320
	(package-activate-1): Fix the `with-demoted-errors' calls:
	the first argument must be a string literal.
Sam Steingold's avatar
Sam Steingold committed
321

322 323 324 325 326 327 328 329 330 331
2014-12-18  Martin Rudalics  <rudalics@gmx.at>

	Add code for "preserving" window sizes.
	* dired.el (dired-pop-to-buffer): Call fit-window-to-buffer with
	`preserve-size' t.
	(dired-mark-pop-up): Preserve size of window showing marked
	files.
	* electric.el (Electric-pop-up-window):
	* help.el (resize-temp-buffer-window): Call fit-window-to-buffer
	with `preserve-size' t.
332 333
	* minibuffer.el (minibuffer-completion-help):
	Use `resize-temp-buffer-window' instead of `fit-window-to-buffer'
334 335 336 337 338 339 340 341 342
	(Bug#19355).  Preserve size of completions window.
	* register.el (register-preview): Preserve size of register
	preview window.
	* tmm.el (tmm-add-prompt): Call fit-window-to-buffer
	with `preserve-size' t (Bug#1291).
	* window.el (with-displayed-buffer-window): Add calls to
	`window-preserve-size'.
	(window-min-pixel-size, window--preservable-size)
	(window-preserve-size, window-preserved-size)
343 344
	(window--preserve-size, window--min-size-ignore-p):
	New functions.
345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361
	(window-min-size, window-min-delta, window--resizable)
	(window--resize-this-window, split-window-below)
	(split-window-right): Amend doc-string.
	(window--min-size-1, window-sizable, window--size-fixed-1)
	(window-size-fixed-p, window--min-delta-1)
	(frame-windows-min-size, window--max-delta-1, window-resize)
	(window--resize-child-windows, window--resize-siblings)
	(enlarge-window, shrink-window, split-window): Handle preserving
	window sizes.
	(adjust-window-trailing-edge): Handle preserving window
	sizes.  Signal user-error instead of an error when there's no
	window above or below.
	(window--state-put-2): Handle horizontal scroll bars.
	(window--display-buffer): Call `preserve-size' if asked for.
	(display-buffer): Mention `preserve-size' alist member in
	doc-string.
	(fit-window-to-buffer): New argument PRESERVE-SIZE.
Martin Rudalics's avatar
Martin Rudalics committed
362 363 364 365 366 367 368 369
	* textmodes/ispell.el (ispell-command-loop): Suppress horizontal
	scroll bar on ispell's windows.  Don't count window lines and
	don't deal with dedicated windows.
	(ispell-show-choices, ispell-help): Let `ispell-display-buffer'
	do the window handling.
	(ispell-adjusted-window-height, ispell-overlay-window): Remove.
	(ispell-display-buffer): New function to reuse, create and fit
	window to ispell's buffers. (Bug#3413)
370

Dmitry Gutov's avatar
Dmitry Gutov committed
371 372 373 374 375
2014-12-18  Dmitry Gutov  <dgutov@yandex.ru>

	* emacs-lisp/package.el (package-activate): Do not re-activate or
	reload the dependencies (bug#19390).

376 377 378 379 380 381 382 383
2014-12-18  Stefan Monnier  <monnier@iro.umontreal.ca>

	* progmodes/cc-cmds.el (c-subword-mode): Alias to subword-mode.
	(c-update-modeline):
	* progmodes/cc-langs.el (c-mode-menu): Use c-subword-mode.
	* progmodes/cc-mode.el (subword-mode): Move autoload to cc-cmds.el.
	(c-mode-base-map): Use c-subword-mode.

384 385
2014-12-18  Eli Zaretskii  <eliz@gnu.org>

386 387
	* international/mule-diag.el (describe-font-internal):
	Display additional info returned by font-info.
388 389 390 391 392 393

	* linum.el (linum--face-width): Rename from linum--face-height,
	and use the new functionality of font-info.
	(linum-update-window): Use linum--face-width and frame-char-width,
	instead of approximating with height.

394 395
2014-12-18  Dmitry Gutov  <dgutov@yandex.ru>

396 397 398
	* vc/vc-svn.el (vc-svn-dir-status-files): Revert the 2014-12-02
	change (bug#19387).  Use `apply' on `vc-dir-command'  (bug#19405).

399 400 401 402 403 404
	* emacs-lisp/package.el (package-activate-1): Add RELOAD argument
	and a docstring.
	(package-activate): Call itself on dependencies on PACKAGE with
	the same FORCE argument.  Pass FORCE as RELOAD into
	`package-activate-1'  (bug#19390).

405 406
2014-12-17  Sam Steingold  <sds@gnu.org>

407 408
	* emacs-lisp/package.el (package--list-loaded-files):
	Handle `(nil ...)' elements in `load-history'.
409

410 411 412 413 414
2014-12-17  Teodor Zlatanov  <tzz@lifelogs.com>

	* net/tramp-sh.el (tramp-histfile-override): New variable.
	(tramp-open-shell, tramp-maybe-open-connection): Use it.

415 416
2014-12-17  Dmitry Gutov  <dgutov@yandex.ru>

417 418
	* vc/vc.el: Improve `dir-status-files' description.

419 420 421
	* emacs-lisp/package.el (package--list-loaded-files): Don't call
	file-truename on load-history elements (bug#19390).

422 423 424 425
2014-12-16  Nicolas Petton <petton.nicolas@gmail.com>

	* emacs-lisp/seq.el: New file.

426 427 428 429 430
2014-12-16  Stefan Monnier  <monnier@iro.umontreal.ca>

	* jit-lock.el (jit-lock-function): Don't defer if jit-lock-defer-time
	is 0 and there is no input pending.

431 432 433 434 435
2014-12-15  Juri Linkov  <juri@linkov.net>

	* replace.el (query-replace-read-from): Use query-replace-compile-replacement
	only on the return value (bug#19383).

436 437 438 439 440 441
2014-12-15  Juri Linkov  <juri@linkov.net>

	* isearch.el (isearch-lazy-highlight-search): Extend the bound of
	the wrapped search by the length of the search string to be able
	to lazy-highlight the whole search string at point (bug#19353).

442 443 444 445
2014-12-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>

	* net/shr.el (shr-fold-text): Don't bug out on zero-length text.

446 447 448 449
2014-12-14  Alan Mackenzie  <acm@muc.de>

	* lisp/cus-start.el (all): Add fast-but-imprecise-scrolling.

450 451 452 453
2014-12-14  Artur Malabarba  <bruce.connor.am@gmail.com>

	* let-alist.el: Add lexical binding.

454 455 456 457 458 459
2014-12-14  Steve Purcell  <steve@sanityinc.com>  (tiny change)

	* emacs-lisp/package.el (package-menu-mode): Use an extra column
	for the "Version" column, to accomodate date-and-time-based
	versions.

460 461
2014-12-14  Cameron Desautels  <camdez@gmail.com>

462 463 464 465
	* cus-edit.el (custom-unsaved-options): New function, extracted
	from `customize-unsaved'.
	(custom-unsaved): Use it.
	(custom-prompt-customize-unsaved-options): New function.
466 467
	(Bug#19328)

468 469 470 471
2014-12-14  Dmitry Gutov  <dgutov@yandex.ru>

	* fringe.el (fringe-bitmap-p): Fix 2014-12-05 breakage.

472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492
2014-12-14  Dmitry Gutov  <dgutov@yandex.ru>

	Move ASYNC argument to the `diff' VC command to the fifth
	position, for better compatibility with existing third-party code,
	and document it.

	* vc/vc.el (vc-diff-internal): Pass `async' argument to the
	backend `diff' command in the last position.

	* vc/vc-svn.el (vc-svn-diff):
	* vc/vc-src.el (vc-src-diff):
	* vc/vc-sccs.el (vc-sccs-diff):
	* vc/vc-rcs.el (vc-rcs-diff):
	* vc/vc-mtn.el (vc-mtn-diff):
	* vc/vc-hg.el (vc-hg-diff):
	* vc/vc-git.el (vc-git-diff):
	* vc/vc-dav.el (vc-dav-diff):
	* vc/vc-cvs.el (vc-cvs-diff):
	* vc/vc-bzr.el (vc-bzr-diff):
	* obsolete/vc-arch.el (vc-arch-diff): Move ASYNC argument to the end.

493 494 495 496
2014-12-13  Andreas Schwab  <schwab@linux-m68k.org>

	* net/shr.el (shr-next-link): Don't error out at eob.

497 498 499 500 501
2014-12-05  Nicolas Richard  <theonewiththeevillook@yahoo.fr>

	* isearch.el (isearch-open-necessary-overlays): Open overlay
	ending at point (bug#19333).

502 503
2014-12-13  Lars Magne Ingebrigtsen  <larsi@gnus.org>

504 505 506
	* net/shr.el (shr-fold-text): New function.
	(shr-show-alt-text, shr-urlify, shr-tag-img): Use it to fold long
	alt/title texts.
507
	(shr-fold-text): Inhibit state from being altered.
508

509 510
	* files.el (directory-files-recursively): Really check whether
	files are symlinks.
511 512
	(directory-name-p): New function.
	(directory-files-recursively): Use it.
513

514 515 516 517 518
2014-12-13  Artur Malabarba  <bruce.connor.am@gmail.com>

	* emacs-lisp/package.el (package--list-loaded-files): New function
	to list files in a given directory which correspond to already
	loaded files.
519 520
	(package-activate-1): Reload files given by `package--list-loaded-files'.
	Fix bug#10125, bug#18443, and bug#18448.
521

522 523 524 525
2014-12-13  Eric S. Raymond  <esr@snark.thyrsus.com>

	* vc/vc-svn.el (vc-svn-diff): Fix bug #19312.

526
2014-12-13  Michael Albinus  <michael.albinus@gmx.de>
Ted Zlatanov's avatar
Ted Zlatanov committed
527 528 529 530

	* simple.el (password-word-equivalents): Add "passcode", used for
	numeric secrets like PINs or RSA tokens.

531
2014-12-13  Michael Albinus  <michael.albinus@gmx.de>
Ted Zlatanov's avatar
Ted Zlatanov committed
532 533 534 535

	* net/tramp-sh.el (tramp-get-remote-path): Use a login shell in
	order to determine `tramp-own-remote-path'.

536
2014-12-13  Fabián Ezequiel Gallina  <fgallina@gnu.org>
Ted Zlatanov's avatar
Ted Zlatanov committed
537

538 539
	* progmodes/python.el (python-shell-parse-command):
	Quote `python-shell-interpreter`.  (Bug#19289)
Ted Zlatanov's avatar
Ted Zlatanov committed
540

541 542 543 544 545 546 547 548
2014-12-12  Stefan Monnier  <monnier@iro.umontreal.ca>

	* progmodes/python.el (python-indent-line): Use `noindent' in strings.
	(python-indent-levels): Document extra value.
	(python-indent-calculate-indentation): Return `noindent' in strings.
	(python-indent-post-self-insert-function)
	(python-indent-calculate-levels): Handle new value.

549 550
2014-12-12  Lars Magne Ingebrigtsen  <larsi@gnus.org>

551 552 553
	* net/network-stream.el (network-stream-open-starttls): No need to
	check for the availability of `gnutls-available-p'.

554 555 556
	* files.el (directory-files-recursively): Don't follow symlinks to
	other directories.

Eric S. Raymond's avatar
Eric S. Raymond committed
557 558
2014-12-12  Eric S. Raymond  <esr@snark.thyrsus.com>

559 560 561
	* vc/vc-dav.el, vc/vc-git.el, vc/vc-hg.el, vc/vc-src.el,
	vc/vc.el: latest-on-branch-p is no longer a public method.

Eric S. Raymond's avatar
Eric S. Raymond committed
562
	* vc/vc.el, vc/vc-hg.el, vc/vc-git.el, vc/vc-hooks.el,
563 564
	vc/vc-mtn.el, vc/vc-rcs.el, vc/vc-sccs.el, vc/vc-src.el: Remove `rollback'
	method, to be replaced in the future by uncommit.
Eric S. Raymond's avatar
Eric S. Raymond committed
565

566 567 568 569 570
2014-12-11  Michael Albinus  <michael.albinus@gmx.de>

	* vc/vc-hg.el (vc-hg-state): Make FILE absolute.  Handle the case
	that there is empty output.

571 572 573 574 575
2014-12-11  Stefan Monnier  <monnier@iro.umontreal.ca>

	* emacs-lisp/eldoc.el (eldoc-documentation-function): Change default.
	(eldoc-mode, eldoc-schedule-timer): Adjust to new default.

576 577 578 579
2014-12-10  Artur Malabarba  <bruce.connor.am@gmail.com>

	* let-alist.el: Add new package and macro.

580 581 582 583 584 585 586
2014-12-10  Eric S. Raymond  <esr@snark.thyrsus.com>

	* vc/vc-dispatcher.el, vc/vc-hooks.el, vc/vc-rcs.el,
	vc/vc-sccs.el, vc/vc.el: Righteous featurectomy of
	vc-keep-workfiles, it's a shoot-self-in-foot archaism.
	Workfiles are always kept.

587 588 589 590 591 592
2014-12-10  Rasmus Pank Roulund  <emacs@pank.eu>

	* net/ange-ftp.el (ange-ftp-switches-ok): Disallow flags causing
	trouble with ls over ftp.  These flags result in ls returning no
	output, causing Tramp-breakage.  (bug#19192)

593 594
2014-12-10  Andreas Schwab  <schwab@suse.de>

595
	* files.el (file-tree-walk): Use file-name-as-directory unconditionally.
596

597 598
2014-12-10  Lars Magne Ingebrigtsen  <larsi@gnus.org>

599 600
	* files.el (directory-files-recursively):
	Use `file-name-all-completions' instead of `directory-files' for
601 602
	greater speed.

603 604 605
	* net/shr.el (shr-tag-object): Don't bug out on text elements in
	<object>.

606 607 608 609
2014-12-09  Bozhidar Batsov  <bozhidar@batsov.com>

	* progmodes/ruby-mode.el (auto-mode-alist): Add .rabl, Berksfile
	and Puppetfile.
610 611
	(ruby-toggle-string-quotes): New command that allows you to quickly
	toggle between single-quoted and double-quoted string literals.
612

613 614 615 616 617
2014-12-09  Eric S. Raymond  <esr@snark.thyrsus.com>

	* vc/vc-src.el (vc-src-do-comand): Prepend -- to file argument
	list, avoids problems witth names containing hyphens.

618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660
2014-12-09  Wilson Snyder  <wsnyder@wsnyder.org>

	Sync with upstream verilog-mode revision aa4b777.
	* progmodes/verilog-mode.el (verilog-mode-version): Update.
	(verilog-auto-end-comment-lines-re, verilog-end-block-ordered-re)
	(verilog-set-auto-endcomments): Automatically comment property/
	endproperty blocks to match other similar blocks like sequence/
	endsequence, function/endfunction, etc.  Reported by Alex Reed.
	(verilog-set-auto-endcomments): Fix end comments for functions of
	type void, etc.  Detect the function- or task-name when
	auto-commenting blocks that lack an explicit portlist.
	Reported by Alex Reed.
	(verilog-nameable-item-re): Fix nameable items that can have an
	end-identifier to include endchecker, endgroup, endprogram,
	endproperty, and endsequence.  Reported by Alex Reed.
	(verilog-preprocessor-re, verilog-beg-of-statement):
	Fix indentation of property/endproperty around pre-processor
	directives.  Reported by Alex Reed.
	(verilog-label-be): When auto-commenting a buffer, consider
	auto-comments on all known keywords (not just a subset thereof).
	Reported by Alex Reed.
	(verilog-beg-of-statement): Fix labeling do-while blocks, bug842.
	Reported by Alex Reed.
	(verilog-beg-of-statement-1, verilog-at-constraint-p):
	Fix hanging with many curly-bracket pairs, bug663.
	(verilog-do-indent): Fix electric tab deleting form-feeds.
	Note caused by indent-line-to deleting tabls pre 24.5.
	(verilog-auto-output, verilog-auto-input, verilog-auto-inout)
	(verilog-auto-inout-module, verilog-auto-inout-in): Doc fixes.
	(verilog-read-always-signals, verilog-auto-sense-sigs)
	(verilog-auto-reset): Fix AUTORESET with always_comb and always_latch,
	bug844.  Reported by Greg Hilton.

2014-12-09  Alex Reed  <acreed4@gmail.com>  (tiny change)

	* progmodes/verilog-mode.el (verilog-no-indent-begin-re):
	Fix `verilog-indent-begin-after-if' nil not honoring 'forever',
	'foreach', and 'do' keywords.
	(verilog-endcomment-reason-re, verilog-beg-of-statement):
	Fix labeling do-while blocks, bug842.
	(verilog-backward-token): Fix indenting sensitivity lists with
	named events, bug840.

661 662 663 664 665 666 667 668 669 670 671
2014-12-09  Reto Zimmermann  <reto@gnu.org>

	Sync with upstream vhdl mode v3.36.1.
	* progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
	(vhdl-compiler-alist): Anchor all error regexps.
	(vhdl-compile-use-local-error-regexp): Change default to nil.
	(vhdl-asort, vhdl-anot-head-p): Remove.
	(vhdl-aput, vhdl-adelete, vhdl-aget): Simplify.
	Remove optional argument of vhdl-aget and update all callers.
	(vhdl-import-project): Also set `vhdl-compiler'.

672 673
2014-12-09  Lars Magne Ingebrigtsen  <larsi@gnus.org>

674 675
	* files.el (find-files): New function.

676 677 678
	* net/shr.el (shr-dom-print): Don't print comments.
	(shr-tag-svg): Give inline SVG images the right type.

679 680 681 682
	* net/eww.el (eww-update-header-line-format): Mark valid/invalid
	certificates in the header line.
	(eww-invalid-certificate, eww-valid-certificate): New faces.

683 684
2014-12-09  Fabián Ezequiel Gallina  <fgallina@gnu.org>

685 686
	* progmodes/python.el (inferior-python-mode):
	Set `comint-prompt-read-only` to `t` only locally.
687

688 689 690
2014-12-08  Lars Magne Ingebrigtsen  <larsi@gnus.org>

	* net/nsm.el (nsm-check-protocol): Test for RC4 on `high'.
691 692
	(nsm-format-certificate): Include more data about the connection.
	(nsm-query): Fill the text to that it looks nicer.
693
	(nsm-check-protocol): Also warn if using SSL3 or older.
694

695 696
2014-12-08  Stefan Monnier  <monnier@iro.umontreal.ca>

697 698 699 700 701 702 703 704
	* progmodes/gud.el (gud-gdb-completions): Remove unused var `start'.

	* obsolete/gulp.el (gulp-create-m-p-alist): Remove unused var `mnt-tm'.

	* net/tramp.el (tramp-handle-make-symbolic-link): Mark unused arg.

	* info.el (Info-mode-map): Remove left-over binding.

705 706 707
	* emacs-lisp/avl-tree.el: Use lexical-binding and cl-lib.
	(avl-tree--root): Remove redundant defsetf.

708 709 710 711 712
2014-12-08  Lars Magne Ingebrigtsen  <larsi@gnus.org>

	* net/nsm.el (network-security-level): Remove the detailed
	description, which was already outdated, and refer the users to
	the manual.
713 714
	(nsm-check-protocol): Check for weak Diffie-Hellman prime bits
	(bug#19153).
715

716 717 718 719
2014-12-06  Andrey Kotlarski  <m00naticus@gmail.com>

	* net/eww.el (eww-buffers-mode): New major mode.
	(eww-list-buffers, eww-buffer-select, eww-buffer-show-next)
720 721
	(eww-buffer-show-previous, eww-buffer-kill, eww-buffer-show):
	New commands/functions (bug#19131).
722

723 724 725 726 727 728
2014-12-08  Lars Magne Ingebrigtsen  <larsi@gnus.org>

	* net/gnutls.el (gnutls-negotiate): Ignore files found via
	'file-name-handler-alist' since the gnutls library can't use those
	(bug#15866).

Dmitry Gutov's avatar
Dmitry Gutov committed
729 730 731 732 733
2014-12-08  Dmitry Gutov  <dgutov@yandex.ru>

	* vc/vc-hg.el (vc-hg-dir-status-files): Only include ignores files
	when FILES is non-nil (bug#19304).

734 735 736 737 738 739
2014-12-08  Eric S. Raymond  <esr@snark.thyrsus.com>

	* vc/vc-arch.el: Moved to obsolete directory so a test framework
	won't trip over bit-rot in it.  There has been no Arch snapshot
	for nine years.

740 741 742 743
2014-12-07  Lars Magne Ingebrigtsen  <larsi@gnus.org>

	* net/eww.el (eww-follow-link): Revert prefix behaviour to
	previous behavior.
744
	(eww-copy-page-url): Add doc string.
745

Ivan Shmakov's avatar
Ivan Shmakov committed
746 747
2014-12-07  Ivan Shmakov  <ivan@siamics.net>

748
	* net/eww.el (eww): Move history recording here...
Ivan Shmakov's avatar
Ivan Shmakov committed
749 750 751 752 753
	(eww-browse-url): ... from here (bug#19253).

	* net/eww.el (eww-browse-url): Use generate-new-buffer (was:
	iterating over possible buffer names.)

754 755 756
2014-12-07  Lars Magne Ingebrigtsen  <larsi@gnus.org>

	* net/eww.el (eww-reload): Take a prefix to work locally (bug#19086).
757
	(eww-current-buffer): Compilation fix for bug#18550 patch.
758

Ivan Shmakov's avatar
Ivan Shmakov committed
759 760 761 762 763
2014-12-07  Ivan Shmakov  <ivan@siamics.net>

	* net/eww.el (eww-list-histories): Restore the history in the
	correct buffer (bug#18550).

764 765 766 767 768
2014-12-07  Lars Magne Ingebrigtsen  <larsi@gnus.org>

	* net/eww.el (eww-bookmark-prepare): Display URLs in first by
	displaying shortened titles first (bug#16398).

769 770 771 772 773 774 775
2014-12-07  Tom Willemse  <tom@ryuslash.org>  (tiny change)

	* progmodes/python.el: Recognize docstrings.
	(python-docstring-at-p, python-font-lock-syntactic-face-function):
	New functions.
	(python-mode): Use them.

776 777 778 779 780
2014-12-06  Ulf Jasper  <ulf.jasper@web.de>

	* net/newst-treeview.el (newsticker--treeview-list-add-item)
	(newsticker--treeview-propertize-tag): Bind tree menu to mouse-3.
	(newsticker--treeview-create-groups-menu)
781
	(newsticker--treeview-create-tree-menu): Remove.
782 783 784 785 786
	(newsticker--treeview-tree-open-menu): New.
	(newsticker-treeview-tree-click): Pass event to
	`newsticker-treeview-tree-do-click'.
	(newsticker-treeview-tree-do-click): Open treemenu on mouse-3.

787 788 789 790 791 792 793 794 795
2014-12-05  Juri Linkov  <juri@linkov.net>

	* comint.el (comint-history-isearch-search)
	(comint-history-isearch-wrap): Use field-beginning instead of
	comint-line-beginning-position.
	(comint-send-input): Go to the end of the field instead of the end
	of the line to accept whole multi-line input.
	http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00305.html

796 797
2014-12-05  Juri Linkov  <juri@linkov.net>

798 799
	* minibuffer.el (minibuffer-completion-help):
	Compare selected-window with minibuffer-window to check whether
800 801 802
	completions should be displayed near the minibuffer.  (Bug#17809)
	http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00311.html

Michael Albinus's avatar
Michael Albinus committed
803 804 805 806 807
2014-12-05  Michael Albinus  <michael.albinus@gmx.de>

	* vc/vc-mtn.el (vc-mtn-root):
	* vc/vc-svn.el (vc-svn-registered): Make FILE absolute.

Stefan Monnier's avatar
Stefan Monnier committed
808
2014-12-05  Stefan Monnier  <monnier@iro.umontreal.ca>
809

810 811 812 813
	* progmodes/sh-script.el (sh-smie-sh-rules): Go back to the beginning
	of the whole pipe when indenting an opening keyword after a |.
	Generalize this treatment to opening keywords like "while" (bug#18031).

Stefan Monnier's avatar
Stefan Monnier committed
814
2014-12-05  Stefan Monnier  <monnier@iro.umontreal.ca>
815

816 817 818
	* simple.el (newline): Place the hook buffer-locally,
	to make sure it's first.

819 820 821 822
	* progmodes/prog-mode.el (prettify-symbols--compose-symbol):
	Fix handling of symbols with different syntax at beginning/end or with
	symbol rather than word syntax.

Stefan Monnier's avatar
Stefan Monnier committed
823
2014-12-05  Eli Zaretskii  <eliz@gnu.org>
824 825 826 827 828 829

	* simple.el (line-move): If noninteractive, call line-move-1, not
	forward-line, since the former is compatible with line-move-visual
	both in terms of the column to which it moves and the return
	value.  (Bug#19211)

830 831
2014-12-05  Stefan Monnier  <monnier@iro.umontreal.ca>

832 833 834 835 836 837 838 839 840 841 842
	* vc/ediff-init.el (ediff-odd-p): Remove.
	(ediff-background-face): Use cl-oddp instead.
	(ediff-buffer-live-p): Make it a defsubst.

	* tooltip.el (tooltip-region-active-p): Remove.

	* net/shr.el (shr-char-breakable-p, shr-char-kinsoku-bol-p)
	(shr-char-kinsoku-eol-p, shr-char-nospace-p): Use define-inline.

	* fringe.el (fringe-bitmap-p): Make it a plain function.

843 844 845 846 847 848
	* emacs-lisp/eieio-core.el: Prefer inlinable functions over macros.
	(class-p, generic-p, eieio-object-p, class-abstract-p):
	Make them defsubst, so as to avoid corner case problems where
	the arg might be evaluated in the condition-case, or it can't be passed
	to higher-order functions like `cl-some'.

849 850 851 852 853
2014-12-05  Nicolas Richard  <theonewiththeevillook@yahoo.fr>

	* wid-edit.el (widget-choose): Let numeric keypad work (bug#19268)
	and remove old menu-related code.

854 855 856 857 858
2014-12-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>

	* net/eww.el (eww-display-pdf): Let mailcap determine how to
	display PDF files (bug#19270).

859 860 861 862 863 864 865 866 867 868 869
2014-12-05  Juri Linkov  <juri@linkov.net>

	Compare with the most recent window by default.
	* vc/compare-w.el (compare-windows-get-window-function): New defcustom.
	(compare-windows-get-recent-window)
	(compare-windows-get-next-window): New functions.
	(compare-windows, compare-windows-sync-default-function):
	Use `compare-windows-get-window-function' instead of `next-window'.
	(compare-windows): Add diff/match messages with region boundaries.
	(Bug#19170)

870 871 872 873
2014-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>

	* subr.el (filter): Remove.  Use `cl-remove-if-not' or `seq-filter'.

874 875 876 877
2014-12-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>

	* net/shr.el (shr--extract-best-source): Ignore non-text children.

878 879
2014-12-04  Eli Zaretskii  <eliz@gnu.org>

880 881 882 883 884 885 886
	Implement copying of a buffer portion while preserving visual order.
	* simple.el (bidi-directional-controls-chars)
	(bidi-directional-non-controls-chars): New variables.
	(squeeze-bidi-context-1, squeeze-bidi-context)
	(line-substring-with-bidi-context)
	(buffer-substring-with-bidi-context): New functions.

887 888
	* files.el (file-tree-walk): Doc fix.

889 890 891 892 893 894 895 896 897
2014-12-04  Rupert Swarbrick  <ruperts@broadcom.com> (tiny change)
	    Rüdiger Sonderfeld  <ruediger@c-plusplus.net>

	* autoinsert.el (auto-insert-alist): Update C/C++ header and
	program support to match more extensions.  Replace non-alnum
	characters when generating include guards (headers) and check for
	more extensions when generating includes (programs)
	(bug#19254).

898 899 900 901
2014-12-03  Eric S. Raymond  <esr@snark.thyrsus.com>

	* files.el (file-tree-walk): Fix docstring.

902 903 904 905 906 907 908 909 910 911 912 913 914
2014-12-03  Karl Fogel  <kfogel@red-bean.com>

	Fix bug whereby saving files hung in VC hook.

	Saving a buffer visiting a file under SVN control would hang if
	the remote repository were unreachable, because the VC hooks tried
	to run "svn status -u" on the file, where the "-u" tells svn to
	get update information from the remote repository.
	http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00174.html

	* vc/vc-svn.el (vc-svn-state): Remove optional `localp'
	argument and always pass "-v" to "svn status", never "-u".

Stefan Monnier's avatar
Stefan Monnier committed
915 916
2014-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>

917 918 919 920 921 922 923
	* emacs-lisp/inline.el: Fix up copyright header.
	(inline-quote, inline-const-p, inline-const-val, inline-error):
	Silence compiler warnings.
	(inline-letevals): Fix edebug spec.
	(inline--testconst-p): Consider lambda expressions as const-p.
	(inline--getconst-val): Use inline--testconst-p.

Stefan Monnier's avatar
Stefan Monnier committed
924 925 926 927 928 929 930 931 932
	* minibuffer.el (completion-table-dynamic): Add arg `switch-buffer'
	and change default to stay in the minibuffer when called from
	the minibuffer (bug#19250).
	(lazy-completion-table): Use this new argument to preserve the
	old behavior.

	* progmodes/elisp-mode.el (elisp--local-variables): Don't burp on
	incorrect lexical elements (bug#19250).

Glenn Morris's avatar
Glenn Morris committed
933
2014-12-03  A. N. Other  <none@example.com>
934 935 936

	* files.el (file-tree-walk): Lisp translation of ANSI ftw(3).

937 938 939 940
2014-12-02  Glenn Morris  <rgm@gnu.org>

	* whitespace.el (whitespace-big-indent-regexp): Add :version.

941 942
2014-12-02  Eric S. Raymond  <esr@snark.thyrsus.com>

943 944 945 946
	* subr.el (filter): New macro. Because it's just silly for a Lisp
	not to have this in 2014.  And VC needs it.

	* vc.el, all backends: API simplification: Abolish dir-status.
947 948
	It's replaced by dir-status-files.

949 950 951 952 953 954
	* vc.el, all backends: API simplification: Remove 4th
	'default-state' argument from vc-dir-status files and its backend
	methods - no backend method ever set it.  It was used only in the
	fallback method to to set a default of 'up-to-date, though a
	convoluted call chain obscured this.

955 956 957
	* vc-hooks.el: Bind vc-delete-file to Ctrl-x v delete.

	* vc.el (vc-expand-dirs): Now takes a second BACKEND argument,
Stefan Monnier's avatar
Stefan Monnier committed
958
	improving behavior on directories using multiple file-oriented VCSes.
959

960 961 962 963
	* vc/vc.el and all backends: API simplification; clear-headers
	is no longer a public method.  It is now local to the one place
	it's used, in the RCS steal-lock method.

964 965
2014-12-01  Eric S. Raymond  <esr@snark.thyrsus.com>

966 967 968 969 970
	* vc/vc.el and all backends: API simplification; could-register
	is no longer a public method.  (vc-cvs.el still has a private
	implementation.)

	* vc/vc.el and all backends: API cleanup; the backend diff method
971 972 973
	takes an explicit async flag.  This eliminates a particularly ugly
	global.

974
	* vc-bzr.el: Restore vc-bzr-state-heuristic as a private method.
975
	VC randomly/unpredictably fails without it; cause not yet established.
976

977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034
2014-12-01  Stefan Monnier  <monnier@iro.umontreal.ca>

	Merge some of the differences from the standalone CC-mode.
	The main change is to only use the `category' text-property only when
	available.  For that many calls are changed to use c-get-char-property,
	c-next-single-property-change, c-sc-scan-lists,
	c-sc-parse-partial-sexp, c-unmark-<->-as-paren.

	* progmodes/cc-mode.el (c-just-done-before-change): New var.
	(c-basic-common-init): Initialize it.
	(c-common-init): Only use mode-require-final-newline when available.
	(c-before-change): Check and set c-just-done-before-change.
	(c-after-change): Re-set c-just-done-before-change.
	(c-advise-fl-for-region): New macro.
	(lazy-lock-defer-rest-after-change, lazy-lock-defer-line-after-change)
	(font-lock-after-change-function, jit-lock-after-change):
	Advise if needed.

	* progmodes/cc-langs.el (c-modified-constant): New lang var.
	(c-known-type-key): Don't make a list just to throw it away.

	* progmodes/cc-engine.el (c-invalidate-state-cache, c-parse-state):
	Handle the case where categories are not available.
	(c-record-parse-state-state, c-replay-parse-state-state):
	Handle marker values.
	(c-before-change-check-<>-operators): Look for the `syntax-table'
	property rather than for the corresponding `category'.
	(c-looking-at-decl-block): Remove unused var
	`c-disallow-comma-in-<>-arglists'.
	(c-forward-<>-arglist-recur): Remove unused var
	`orig-record-found-types'.

	* progmodes/cc-defs.el (c-version): Bump up to 5.33.
	(c-use-category): New const.
	(c-next-single-property-change): New macro.
	(c-region-is-active-p): Prefer region-active-p when available.
	(c-search-backward-char-property): Fix old min/max typo; probably
	a copy/paste error.
	(c-mark-<-as-paren, c-mark->-as-paren, c-unmark-<->-as-paren):
	Turn them into macros that obey c-use-category.
	(c-sc-scan-lists-no-category+1+1, c-sc-scan-lists-no-category+1-1)
	(c-sc-scan-lists-no-category-1+1, c-sc-scan-lists-no-category-1-1)
	(c-sc-scan-lists, c-sc-parse-partial-sexp)
	(c-looking-at-non-alphnumspace): New macros.
	(c-sc-parse-partial-sexp-no-category): New function.
	(c-emacs-features): Add `category-properties' element.

	* progmodes/cc-cmds.el (c-forward-into-nomenclature)
	(c-backward-into-nomenclature): Use cc-subword if subword-mode is
	not available.
	(c-beginning-of-defun, c-end-of-defun, c-mark-function)
	(c-indent-line-or-region): Use c-region-is-active-p.

	* progmodes/cc-bytecomp.el (cc-bytecomp-unbound-variables)
	(cc-bytecomp-original-functions, cc-bytecomp-original-properties)
	(cc-bytecomp-loaded-files): Re-set each time the file is loaded.
	(cc-bytecomp-obsolete-var, cc-bytecomp-ignore-obsolete)
	(cc-bytecomp-obsolete-fun): Delete unused functions.
1035

1036
	* progmodes/cc-align.el (c-lineup-respect-col-0): New function.
1037

1038 1039 1040 1041 1042
2014-12-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>

	* net/shr.el (shr-dom-print): Fix up `shr-dom-print' after the
	dom.el changes.

1043 1044
2014-12-01  Stefan Monnier  <monnier@iro.umontreal.ca>

1045 1046 1047 1048 1049
	* vc/vc.el (vc-find-conflicted-file): Look for conflicted files in the
	current "project" rather than just the current directory.
	* vc/vc-git.el (vc-git-conflicted-files): Clarify in which directory
	the file names make sense.

1050 1051 1052 1053
	* vc/smerge-mode.el (smerge-swap): New command.

	* vc/diff-mode.el (diff-kill-applied-hunks): New command.

1054 1055
2014-12-01  Ulf Jasper  <ulf.jasper@web.de>

1056 1057
	* net/newst-treeview.el (newsticker--treeview-item-show):
	Check window liveliness before measuring its width.
1058 1059 1060 1061 1062 1063 1064

	* net/newst-backend.el (newsticker--get-news-by-url-callback):
	Pass correct status to `newsticker--sentinel-work'.
	(newsticker--sentinel-work): Use "newsticker--download-error" as
	guid in order to prevent multiple "Could not download..."
	messages.  Fixes bug#19166.

1065 1066 1067 1068 1069
2014-12-01  Ivan Shmakov  <ivan@siamics.net>

	* net/eww.el (eww-render): Call `eww-after-render-hook' in the
	correct buffer (bug#19225).

1070 1071
2014-12-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>

1072 1073
	* net/nsm.el (network-security-level): Change the default to `medium'.

1074 1075 1076
	* net/eww.el (eww): Leave point in a place that doesn't cause
	scrolling when displaying "Loading...".

1077 1078
2014-12-01  Eric S. Raymond  <esr@snark.thyrsus.com>

1079 1080
	* vc/vc.el, vc/vc-cvs.el, vc/vc-rcs.el, vc/vc-svn.el: The 'merge'
	backend method of RCS/CVS/SVN is now 'merge-file', to contrast with
1081
	'merge-branch'.  Prompting for merge revisions is pushed down to
1082 1083 1084
	the back ends; this fixes a layering violation that caused bad
	behavior with SVN.

1085 1086
	* vc/vc.el, vc-hooks.el, and all backends: API simplification;
	vc-stay-local-p and repository-hostname are no longer public
1087
	methods.  Only the CVS and SVN backends used these, and the SVN
1088
	support was conditioned out because svn status -v is too slow.
Eric S. Raymond's avatar
Eric S. Raymond committed
1089
	The CVS back end retains this machibery and the vc-stay-local
1090 1091
	configuration variable now only affects it.

Stefan Monnier's avatar
Stefan Monnier committed
1092 1093 1094 1095
2014-12-01  Stefan Monnier  <monnier@iro.umontreal.ca>

	* emacs-lisp/inline.el: New file.

1096 1097
2014-12-01  Eric S. Raymond  <esr@snark.thyrsus.com>

1098 1099
	* vc/vc.el, vc-hooks.el, and all backends: API simplification;
	vc-state-heuristic is no longer a public method, having been
Stefan Monnier's avatar
Stefan Monnier committed
1100 1101
	removed where it is redundant, unnecessary, or known buggy.
	This eliminated all backends except CVS.  Eliminates bug#7850.
1102

1103 1104 1105 1106 1107 1108 1109
	* vc/vc-cvs.el, vc/vc-hooks.el, vc/vc-rcs.el, vc/vc-sccs.el:
	Eliminate vc-mistrust-permissions.  It was only relevant to the
	RCS and SCCS back ends and defaulted to t. Code now always
	mistrusts permissions - by actual measurement the effect on
	performance is negligible. As a side effect bug#11490 is now
	irrelevant.

1110 1111 1112 1113 1114 1115 1116
	* vc/vc.el, vc-hooks.el, and all backends: API simplification;
	vc-workfile-unchanged-p is no longer a public method (but the RCS
	and SCCS back ends retain it as a private method used in state
	computation). This method was redundant with vc-state and usually
	implemented as a trivial call to same. Fixes the failure mode
	described in bug#694.

1117 1118 1119 1120
	* vc/vc.el and all backends: API simplification; init-revision is
	gone, and vc-registered functions no longer take an
	initial-revision argument.

1121 1122 1123 1124 1125
2014-11-29  Glenn Morris  <rgm@gnu.org>

	* vc/vc-src.el (vc-src, vc-src-diff-switches)
	(vc-src-master-templates): Fix :version tags.

1126 1127 1128 1129
2014-11-29  Paul Rankin  <paul@tilk.co>  (tiny change)

	* outline.el (outline-move-subtree-down): Refactor and improve code.

Paul Eggert's avatar
Paul Eggert committed
1130
2014-11-29  Stephen Berman  <stephen.berman@gmx.net>
1131 1132 1133 1134 1135 1136
	    Stefan Monnier  <monnier@iro.umontreal.ca>

	* outline.el (outline-move-subtree-down): Make sure we can move
	forward to find the end of the subtree and the insertion point
	(bug#19102).

Paul Eggert's avatar
Paul Eggert committed
1137
2014-11-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
1138

Stefan Monnier's avatar
Stefan Monnier committed
1139 1140
	* progmodes/python.el (python-shell-completion-setup-code):
	Use __builtin__ module (or builtins in Python 3) and catch all errors
1141 1142
	when importing readline and rlcompleter.

Paul Eggert's avatar
Paul Eggert committed
1143
2014-11-29  Stephen Berman  <stephen.berman@gmx.net>
1144 1145 1146 1147 1148 1149

	* calendar/todo-mode.el: Handle calling revert-buffer (bug#19187).
	(todo-revert-buffer): New function.
	(todo-modes-set-1): Use it as the buffer-local value of
	revert-buffer-function.

Paul Eggert's avatar
Paul Eggert committed
1150
2014-11-29  Stephen Berman  <stephen.berman@gmx.net>
1151 1152 1153 1154 1155

	* calendar/todo-mode.el (todo-mode): If called interactively, just
	display a message saying to call todo-show to enter Todo mode
	(Bug#19112).

Paul Eggert's avatar
Paul Eggert committed
1156
2014-11-29  Dmitry Gutov  <dgutov@yandex.ru>
Dmitry Gutov's avatar
Dmitry Gutov committed
1157

Dmitry Gutov's avatar
Dmitry Gutov committed
1158 1159 1160
	* vc/vc-hg.el (vc-hg-dir-status-files): Include ignored files.
	(Bug#18579)

Dmitry Gutov's avatar
Dmitry Gutov committed
1161 1162 1163
	* vc/vc-bzr.el (vc-bzr-after-dir-status): Don't skip ignored
	files.  (Bug#18579)

Paul Eggert's avatar
Paul Eggert committed
1164
2014-11-29  Michael Albinus  <michael.albinus@gmx.de>
1165 1166 1167 1168

	* textmodes/makeinfo.el (makeinfo-buffer): Make it work also for
	remote `buffer-file-name'.

Paul Eggert's avatar
Paul Eggert committed
1169
2014-11-29  Leo Liu  <sdl.web@gmail.com>
Leo Liu's avatar
Leo Liu committed
1170 1171 1172

	* calendar/diary-lib.el (calendar-mark-1): Fix thinko.

Paul Eggert's avatar
Paul Eggert committed
1173
2014-11-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
1174 1175 1176 1177 1178 1179

	Set PYTHONUNBUFFERED on shell startup.

	* progmodes/python.el (python-shell-unbuffered): New var.
	(python-shell-calculate-process-environment): Use it.

Paul Eggert's avatar
Paul Eggert committed
1180
2014-11-29  Michael Albinus  <michael.albinus@gmx.de>
1181

Michael Albinus's avatar
Michael Albinus committed
1182 1183 1184
	* net/tramp.el (tramp-action-password): Clean password on subsequent
	attempts even if there was no wrong password indication.  (Bug#19047)

1185 1186 1187 1188 1189
	* net/tramp-sh.el (tramp-get-remote-locale): Return "LC_ALL=C" as
	fallback.
	(tramp-open-connection-setup-interactive-shell): No need to check
	for nil as `tramp-get-remote-locale' return value.

Paul Eggert's avatar
Paul Eggert committed
1190
2014-11-29  Eli Zaretskii  <eliz@gnu.org>
1191

Stefan Monnier's avatar
Stefan Monnier committed
1192 1193
	* vc/vc-git.el (vc-git-command, vc-git--call):
	Bind coding-system-for-read and coding-system-for-write to
1194
	vc-git-commits-coding-system.
1195 1196
	(vc-git-previous-revision): Use "~1" instead of "^", since the
	latter is a special character for MS-Windows system shells.
1197

Paul Eggert's avatar
Paul Eggert committed
1198
2014-11-29  Michael Albinus  <michael.albinus@gmx.de>
1199

1200
	Improve XEmacs compatibility.
1201 1202 1203 1204 1205 1206 1207 1208

	* net/tramp.el (tramp-autoload-file-name-handler):
	Wrap `temporary-file-directory' by `symbol-value', it doesn't
	exist in XEmacs.
	(tramp-read-passwd): Don't use `with-timeout-suspend' and
	`with-timeout-unsuspend' if they don't exist, like in XEmacs.
	(tramp-time-less-p, tramp-time-subtract): Remove functions.
	(tramp-handle-file-newer-than-file-p, tramp-time-diff):
Michael Albinus's avatar
Michael Albinus committed
1209
	* net/tramp-adb.el (tramp-adb-ls-output-time-less-p):
1210 1211
	* net/tramp-cache.el (tramp-get-file-property):
	* net/tramp-smb.el (tramp-smb-handle-insert-directory):
1212 1213
	Use `time-less-p' and `time-subtract, respectively.

Michael Albinus's avatar
Michael Albinus committed
1214
	* net/tramp-adb.el (top): Do not require time-date.el.
1215

Michael Albinus's avatar
Michael Albinus committed
1216
	* net/tramp-compat.el (top): Require time-date.el for XEmacs.
1217

Michael Albinus's avatar
Michael Albinus committed
1218
	* net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
1219 1220
	Check, whether `utf-8' is a valid coding system.

Paul Eggert's avatar
Paul Eggert committed
1221
2014-11-29  Eli Zaretskii  <eliz@gnu.org>
1222 1223 1224

	* vc/vc.el (vc-retrieve-tag): Doc fix.

1225 1226 1227 1228 1229
2014-11-28  Stefan Monnier  <monnier@iro.umontreal.ca>

	* simple.el (execute-extended-command--shorter): Fix the "M-p" case
	(bug#19152).

1230 1231 1232 1233
2014-11-28  Martin Rudalics  <rudalics@gmx.at>

	Fix two issues around help-window-select.  (Bug#11039) (Bug#19012)
	* help.el (help-window-old-frame): New variable.
1234 1235
	(help-window-select): Default to nil (Bug#11039).
	Rewrite doc-string.
1236 1237 1238 1239 1240 1241
	(help-window-setup): When the help window appears on another
	frame and `help-window-select' is non-nil, give that frame input
	focus too (Bug#19012).
	(with-help-window): Store selected frame in
	help-window-old-frame.

1242 1243 1244 1245 1246
2014-11-28  Ulf Jasper  <ulf.jasper@web.de>

	* net/newst-treeview.el (newsticker--treeview-load): Take care of
	nil value for `newsticker-groups-filename'.

1247 1248 1249
2014-11-28  Daiki Ueno  <ueno@gnu.org>

	* epa.el (epa-sign-file, epa-encrypt-file, epa-decrypt-region)
1250 1251
	(epa-sign-region, epa-encrypt-region):
	Use `epg-context-set-{passphrase,progress}-callback', instead of
1252 1253 1254
	`setf'.  This partially reverts commit 9e48a95c (bug#19150).
	Reported by José A. Romero L.

1255 1256
2014-11-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>

1257 1258
	* net/eww.el (eww-restore-history):
	Bind `inhibit-modification-hooks' instead of `after-change-functions'.
1259

1260 1261
2014-11-27  Ulf Jasper  <ulf.jasper@web.de>

1262 1263
	* net/newst-backend.el (newsticker--parse-atom-1.0):
	Handle embedded (x)html in summary node.
1264

1265 1266 1267 1268 1269
2014-11-27  Sam Steingold  <sds@gnu.org>

	* menu-bar.el (menu-bar-open): When everything else fails,
	use (mouse-menu-bar-map).

1270 1271
2014-11-27  Ulf Jasper  <ulf.jasper@web.de>

1272 1273
	* net/newst-treeview.el (newsticker-groups-filename):
	Change default value to nil.  Point out that variable is obsolete in doc
1274 1275 1276 1277 1278
	string.
	(newsticker--treeview-load): Change wording of the questions the
	user is asked when `newsticker-groups-filename' is found to be
	used and we offer to read and remove the groups file. (bug#19165)

1279 1280
2014-11-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>

1281 1282
	* net/eww.el (eww): Record the new URL immediately, so that if the
	HTTP fetch fails, we have the right URL in the buffer.
1283 1284
	(eww-process-text-input): Don't shorten the input field if
	deleting at the last character (bug#19085).
1285 1286
	(eww-restore-history): Inhibit change functions while restoring
	the history.
1287
	(eww-process-text-input): Fix deletion at the start of the field, too.
1288
	(eww-mode): Revert mistanken removal of `buffer-disable-undo'.
1289
	(eww-process-text-input): Try to keep track of the size more reliably.
1290

1291 1292
	* dom.el (dom-pp): New function.

1293
2014-11-27  Eli Zaretskii  <eliz@gnu.org>
1294 1295 1296 1297 1298 1299

	* vc/vc-bzr.el (vc-bzr-print-log, vc-bzr-expanded-log-entry):
	Don't assume --long is the default for "bzr log", always specify
	it explicitly, in case the user defined an alias for 'log' that
	uses some other format.

1300
2014-11-27  Fabián Ezequiel Gallina  <fgallina@gnu.org>
1301

1302 1303
	* progmodes/python.el (python-eldoc--get-doc-at-point):
	Strip shell output before returning.  (bug#18794)
1304

1305
2014-11-27  Dmitry Gutov  <dgutov@yandex.ru>
1306 1307 1308 1309 1310 1311 1312

	Fix indentation before `!=' and after `+='.  Originally reported
	in https://github.com/mooz/js2-mode/issues/174.
	* progmodes/js.el (js--indent-operator-re): Make assignments and
	(in)equality operator a separate case.
	(js--continued-expression-p): Escape the second `+' in the regexp.

1313
2014-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
1314 1315 1316

	* window.el (handle-select-window): Deactivate shift-region (bug#19003).

1317 1318
2014-11-26  Lars Magne Ingebrigtsen  <larsi@gnus.org>

1319 1320 1321
	* net/nsm.el (nsm-new-fingerprint-ok-p): Display the certificate
	when querying about new certificates.

1322 1323
	* net/shr.el (shr-make-table-1): dom.el changes for table rendering.

1324 1325 1326 1327 1328 1329 1330
	* dom.el (dom-by-tag): Use `equal' for comparisons so that tags
	can be strings.
	(dom-elements): Protect against non-text nodes.
	(dom-non-text-children): New function.

	* net/eww.el (eww-tag-title): Use `dom-text'.

Sam Steingold's avatar
Sam Steingold committed
1331 1332 1333 1334
2014-11-26  Sam Steingold  <sds@gnu.org>

	* textmodes/sgml-mode.el (sgml-validate-command): Pass -utf8 to tidy.

1335 1336 1337 1338
2014-11-26  Lars Magne Ingebrigtsen  <larsi@gnus.org>

	* net/eww.el (eww-highest-readability): More dom.el fixes.

1339 1340
2014-11-26  Ulf Jasper  <ulf.jasper@web.de>

1341 1342
	* net/newst-backend.el (newsticker--parse-generic-items):
	Take care of UIDs when adding elements to cache.
1343

1344 1345 1346 1347 1348
2014-11-26  Alan Mackenzie  <acm@muc.de>

	Remove spurious reference to symbol category_properties.
	* progmodes/cc-engine.el (c-state-pp-to-literal): Fix here.

Lars Magne Ingebrigtsen's avatar
Lars Magne Ingebrigtsen committed
1349 1350
2014-11-26  Lars Magne Ingebrigtsen  <larsi@gnus.org>

1351 1352 1353 1354
	* net/eww.el: Use the new dom.el accessors throughout.

	* net/shr.el: Ditto.

Lars Magne Ingebrigtsen's avatar
Lars Magne Ingebrigtsen committed
1355 1356
	* dom.el: New file.

1357 1358 1359 1360
2014-11-26  Glenn Morris  <rgm@gnu.org>

	* arc-mode.el (archive-visit-single-files): Add :version.

1361 1362 1363 1364
2014-11-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>

	* net/nsm.el (nsm-format-certificate): Don't bug out on missing
	elements.
1365 1366
	(nsm-warnings-ok-p): The new version of this function always
	returned nil when everything was OK.
1367

1368 1369
2014-11-25  Teodor Zlatanov  <tzz@lifelogs.com>

1370 1371
	* net/gnutls.el (gnutls): Set :group to 'comm so it's near NSM.

1372 1373 1374
	* net/nsm.el (nsm-check-tls-connection, nsm-save-host)
	(nsm-warnings-ok-p): Use `gnutls-peer-status-warning-describe'.

1375 1376 1377 1378 1379
2014-11-20  Nicolas Richard  <theonewiththeevillook@yahoo.fr>

	* emacs-lisp/byte-run.el (function-put): Match argument names to
	docstring.

Sam Steingold's avatar
Sam Steingold committed
1380 1381 1382 1383 1384
2014-11-24  Sam Steingold  <sds@gnu.org>

	* vc/vc-hooks.el (vc-directory-exclusion-list):
	Fix a trivial typo (bug#19171).

1385 1386 1387 1388 1389
2014-11-24  Stefan Monnier  <monnier@iro.umontreal.ca>

	* vc/vc-hooks.el (vc-state-base-face): Don't override
	mode-line-inactive.

1390 1391 1392
2014-11-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>

	* net/eww.el (eww-set-character-encoding): Use `read-coding-system'.
1393 1394
	(eww-process-text-input): Inhibit read only so that input fields
	don't get shortened (bug#19085).
1395

Leo Liu's avatar
Leo Liu committed
1396 1397 1398 1399 1400 1401 1402 1403 1404 1405
2014-11-24  Leo Liu  <sdl.web@gmail.com>

	* emacs-lisp/macroexp.el (macroexp-let2*): New macro.

	* window.el (with-temp-buffer-window)
	(with-current-buffer-window, with-displayed-buffer-window):
	* emacs-lisp/cl-macs.el (cl--compiler-macro-adjoin):
	* emacs-lisp/cl-lib.el (substring):
	* emacs-lisp/cl-extra.el (cl-getf): Use it.

1406 1407 1408 1409 1410 1411
2014-11-24  Eli Zaretskii  <eliz@gnu.org>

	* isearch.el (isearch-update): Don't assume
	pos-visible-in-window-p will return nil when point is hscrolled
	out of view.  (Bug#19157)

1412 1413 1414 1415
2014-11-20  Andrey Kotlarski  <m00naticus@gmail.com>

	* net/eww.el (eww-browse-url): Optionally create new eww buffer.
	(eww-follow-link): Follow in new buffer in case of prefix
Lars Magne Ingebrigtsen's avatar
Lars Magne Ingebrigtsen committed
1416
	argument, open externally with double prefix (bug#19130).
1417

1418 1419 1420
2014-11-23  Lars Magne Ingebrigtsen  <larsi@gnus.org>

	* net/eww.el (eww-display-html): Decode the document-defined charset.
1421 1422 1423 1424 1425
	(eww): Pop to the *eww* buffer immediately after executing the
	`M-x eww' command to avoid having buffers pop up later.
	(eww-display-html): Don't pop the *eww* buffer.
	(eww-display-raw): Ditto.
	(eww-display-image): Ditto.
1426
	(eww-follow-link): Make going to #targets in the page work again.
1427

1428 1429 1430 1431 1432 1433 1434
2014-11-23  Ivan Shmakov  <ivan@siamics.net>

	* net/eww.el (eww-suggest-uris): New variable.
	(eww-suggested-uris): New function.
	(eww): Default to UR