Commit graph

787 commits

Author SHA1 Message Date
Glenn Morris
97e48510ad Merge from origin/emacs-27
a5f7c26907 (origin/emacs-27) * admin/authors.el: Add an author alias.
d87a4d1f4e Limit RLIMIT_NOFILE to FD_SETSIZE on macOS
e5ca8e5e73 Fix Elisp manual entry on 'set-window-configuration'
485f24223f ; Update ChangeLog.3
8f200254fb ; Update etc/AUTHORS
c7adc851ad * admin/authors.el: Add missing author aliases.
4acdd7fe58 Fix edge case errors in filename-matching regexps
5f36e21fe5 Clarify the doc string of 'yank'
13301d4266 New function erc-track-switch-buffer-other-window
38f7538d8f New function erc-switch-to-buffer-other-window

# Conflicts:
#	etc/NEWS
2020-04-15 07:50:15 -07:00
Mattias Engdegård
4acdd7fe58 Fix edge case errors in filename-matching regexps
These changes fix actual or latent bugs in regexps that match
file names, such as PATTERN arguments to 'directory-files'.  See
https://lists.gnu.org/archive/html/emacs-devel/2020-04/msg00265.html

* admin/authors.el (authors-obsolete-files-regexps)
(authors-renamed-files-regexps):
* lisp/auth-source-pass.el (auth-source-pass-entries):
* lisp/calendar/todo-mode.el (todo-show, todo-find-filtered-items-file)
(todo-filter-items, todo-reset-nondiary-marker, todo-reset-done-string)
(todo-reset-comment-string, todo-reset-highlight-item):
* lisp/cedet/semantic/db-ebrowse.el (semanticdb-load-ebrowse-caches):
* lisp/cedet/semantic/texi.el (semantic-texi-associated-files):
* lisp/cedet/srecode/map.el (srecode-map-update-map):
* lisp/dired.el (dired-re-no-dot):
* lisp/emacs-lisp/autoload.el (update-directory-autoloads):
* lisp/emacs-lisp/shadow.el (load-path-shadows-find):
* lisp/files.el (auto-mode-alist, directory-files-no-dot-files-regexp):
* lisp/finder.el (finder-compile-keywords):
* lisp/generic-x.el (inetd-conf-generic-mode, named-boot-generic-mode)
(resolve-conf-generic-mode, etc-modules-conf-generic-mode):
* lisp/gnus/gnus-agent.el (gnus-agent-read-agentview)
(gnus-agent-regenerate-group, gnus-agent-update-files-total-fetched-for):
* lisp/gnus/gnus-cache.el (gnus-cache-articles-in-group):
* lisp/gnus/gnus-score.el (gnus-score-search-global-directories):
* lisp/gnus/gnus-util.el (gnus-delete-directory):
* lisp/gnus/gnus-uu.el (gnus-uu-dir-files):
* lisp/gnus/nndraft.el (nndraft-request-group):
* lisp/gnus/nnmh.el (nnmh-request-group, nnmh-request-create-group):
(nnmh-request-delete-group, nnmh-active-number, nnmh-update-gnus-unreads):
* lisp/gnus/nnspool.el (nnspool-request-group):
* lisp/gnus/spam-stat.el (spam-stat-process-directory)
(spam-stat-test-directory):
* lisp/help-fns.el (help-fns--first-release):
* lisp/help.el (view-emacs-news):
* lisp/international/quail.el (quail-update-leim-list-file):
* lisp/international/titdic-cnv.el (batch-titdic-convert):
* lisp/mail/mspools.el (mspools-set-vm-spool-files)
(mspools-get-spool-files):
* lisp/mail/rmail.el (rmail-secondary-file-regexp)
(rmail-speedbar-match-folder-regexp):
* lisp/net/ange-ftp.el (ange-ftp-delete-directory):
* lisp/net/tramp.el (tramp-use-absolute-autoload-file-names):
* lisp/obsolete/gulp.el (gulp-send-requests):
* lisp/obsolete/vc-arch.el (vc-arch-trim-revlib):
* lisp/org/ob-core.el (org-babel-remove-temporary-directory):
* lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp, ebnf-style-database):
* lisp/progmodes/executable.el (executable-command-find-posix-p):
* lisp/startup.el (command-line):
* lisp/textmodes/refer.el (refer-get-bib-files):
* lisp/url/url-about.el (url-probe-protocols):
* lisp/vc/vc-rcs.el (vc-rcs-register, vc-rcs-unregister):
* test/lisp/net/tramp-archive-tests.el
(tramp-archive-test19-directory-files-and-attributes):
* test/lisp/net/tramp-tests.el (tramp-test19-directory-files-and-attributes):
Replace ^ and $ with \` and \', respectively.
Use (rx (or (not ".") "...")), translated into "[^.]\\|\\.\\.\\.",
to match anything but "." and "..", instead of several incorrect
regexps.
2020-04-14 12:25:16 +02:00
Glenn Morris
fa4eec5cfa Merge from origin/emacs-27
c6e0981b96 (origin/emacs-27) * lisp/image/image-converter.el: Fix cus...
461bd9cc20 Fix url-cookie.el for lexical binding
f3ccfb1926 ; * src/decompress.c: Fix comment style.
1af03e7e92 ; * src/xfaces.c (syms_of_xfaces): Fix wording and typo.
93945fcd19 ; * test/lisp/calc/calc-tests.el: Fix mistake in last commit
ee47e00f4e Don't suggest setting face-remapping-alist to a literal (B...
c2b8ce4439 Calc: don't treat nil as an integer (bug#40155)
e1f0e08922 * lisp/files.el (directory-files-recursively): Doc fix.  (...
02b3820315 Document how to disable Tramp file archives
2020-03-30 07:50:37 -07:00
Andreas Schwab
461bd9cc20 Fix url-cookie.el for lexical binding
* lisp/url/url-cookie.el (url-cookie-handle-set-cookie): Use setq
instead of set to modify lexical binding.
2020-03-29 21:57:09 +02:00
Stefan Kangas
c1772ce296 Declare some <package>-version variables obsolete
These are not used for anything these days and can therefore be
removed.  Package developers should check the Emacs version instead.
Ref: https://lists.gnu.org/r/emacs-devel/2020-03/msg00080.html

* lisp/calendar/icalendar.el (icalendar-version):
* lisp/dframe.el (dframe-version):
* lisp/emacs-lisp/checkdoc.el (checkdoc-version):
* lisp/emulation/edt.el (edt-version):
* lisp/international/mule.el (mule-version)
(mule-version-date):
* lisp/linum.el (linum-version):
* lisp/play/bubbles.el (bubbles-version):
* lisp/speedbar.el (speedbar-version):
* lisp/textmodes/remember.el (remember-version):
* lisp/url/url-vars.el (url-version):
* lisp/woman.el (woman-version): Declare obsolete.

* lisp/emacs-lisp/checkdoc.el (checkdoc-start-section):
* lisp/speedbar.el (speedbar-mode):
* lisp/url/url-about.el (url-about-protocols):
* lisp/url/url-http.el (url-http--user-agent-default-string):
* lisp/url/url-news.el (url-news-fetch-message-id):
* lisp/woman.el (woman-menu, woman-mode): Stop using variables
declared obsolete above.
2020-03-21 02:49:25 +01:00
Paul Eggert
9d626dffc6 Add 'nofollow' flag to set-file-modes etc.
This avoids some race conditions (Bug#39683).  E.g., if some other
program changes a file to a symlink between the time Emacs creates
the file and the time it changes the file’s permissions, using the
new flag prevents Emacs from inadvertently changing the
permissions of a victim in some completely unrelated directory.
* admin/merge-gnulib (GNULIB_MODULES): Add fchmodat.
* doc/lispref/files.texi (Testing Accessibility, Changing Files):
* doc/lispref/os.texi (File Notifications):
* etc/NEWS:
Adjust documentation accordingly.
* lib/chmodat.c, lib/fchmodat.c, lib/lchmod.c, m4/fchmodat.m4:
* m4/lchmod.m4: New files, copied from Gnulib.
* lib/gnulib.mk.in: Regenerate.
* lisp/dired-aux.el (dired-do-chmod):
* lisp/doc-view.el (doc-view-make-safe-dir):
* lisp/emacs-lisp/autoload.el (autoload--save-buffer):
* lisp/emacs-lisp/bytecomp.el (byte-compile-file):
* lisp/eshell/em-pred.el (eshell-pred-file-mode):
* lisp/files.el (backup-buffer-copy, copy-directory):
* lisp/gnus/mail-source.el (mail-source-movemail):
* lisp/gnus/mm-decode.el (mm-display-external):
* lisp/gnus/nnmail.el (nnmail-write-region):
* lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy)
(tramp-adb-handle-write-region):
* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-directly):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-write-region):
* lisp/net/tramp.el (tramp-handle-write-region)
(tramp-make-tramp-temp-file):
* lisp/server.el (server-ensure-safe-dir):
* lisp/url/url-util.el (url-make-private-file):
When getting or setting file modes, avoid following symbolic links
when the file is not supposed to be a symbolic link.
* lisp/doc-view.el (doc-view-make-safe-dir):
Omit no-longer-needed separate symlink test.
* lisp/gnus/gnus-util.el (gnus-set-file-modes):
* lisp/net/tramp.el (tramp-handle-file-modes):
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-set-file-modes):
* src/fileio.c (symlink_nofollow_flag): New function.
(Ffile_modes, Fset_file_modes):
Support an optional FLAG arg.  All C callers changed.
* lisp/net/ange-ftp.el (ange-ftp-set-file-modes):
* lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes):
* lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes):
* lisp/net/tramp-smb.el (tramp-smb-handle-set-file-modes):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-set-file-modes):
Accept an optional FLAG arg that is currently ignored,
and add a FIXME comment for it.
* m4/gnulib-comp.m4: Regenerate.
2020-02-23 16:45:50 -08:00
Mattias Engdegård
770f76f050 Remove subsumed repetitions in regexps
Make regexps smaller and faster by removing terms that are superfluous
by virtue of standing next to another term that matches more.  See
https://lists.gnu.org/archive/html/emacs-devel/2020-01/msg00949.html
for details.

* lisp/bs.el (bs--make-header-match-string):
* lisp/gnus/deuglify.el (gnus-outlook-repair-attribution-block):
* lisp/gnus/message.el (message-subject-trailing-was-ask-regexp)
(message-subject-trailing-was-regexp):
* lisp/informat.el (Info-validate):
* lisp/net/browse-url.el (browse-url-button-regexp):
* lisp/net/rcirc.el (rcirc-url-regexp):
* lisp/org/ob-core.el (org-babel-remove-result):
* lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
* lisp/org/org-capture.el (org-capture-set-target-location):
* lisp/org/org-table.el (org-table-expand-lhs-ranges):
* lisp/org/org.el (org-maybe-keyword-time-regexp, org-ts-regexp)
(org-ts-regexp-inactive, org-ts-regexp-both):
* lisp/play/gametree.el (gametree-hack-file-layout):
* lisp/progmodes/cc-mode.el (c-Java-defun-prompt-regexp):
* lisp/progmodes/idlw-shell.el (idlwave-shell-halting-error):
* lisp/progmodes/ruby-mode.el (ruby-mode-set-encoding):
* lisp/progmodes/verilog-mode.el (verilog-error-font-lock-keywords)
(verilog-verilint-off, verilog-case-indent-level)
(verilog-within-translate-off, verilog-start-translate-off)
(verilog-back-to-start-translate-off, verilog-end-translate-off)
(verilog-expand-dirnames):
* lisp/term.el (term-control-seq-regexp):
* lisp/textmodes/reftex-vars.el (featurep):
* lisp/url/url-gw.el (url-open-telnet):
* lisp/vc/ediff-ptch.el (ediff-context-diff-label-regexp):
* lisp/vc/pcvs-parse.el (cvs-parse-status):
* test/src/regex-emacs-tests.el (regex-tests-PCRE):
Remove subsumed repetitions.
* lisp/progmodes/sh-script.el (sh-syntax-propertize-function):
Simplify repetition of a repetition.
2020-02-20 16:05:18 +01:00
Lars Ingebrigtsen
3ac8349517 Fix problem with degenerate <html base="."> specs in shr
* lisp/url/url-expand.el (url-expand-file-name): Don't bug out on
degenerate base/expander pairs (bug#39235).
2020-02-20 15:14:39 +01:00
Glenn Morris
680021ebde Make more load-hooks obsolete
* lisp/align.el (align-load-hook):
* lisp/autorevert.el (auto-revert-load-hook):
* lisp/bookmark.el (bookmark-load-hook):
* lisp/cmuscheme.el (cmuscheme-load-hook):
* lisp/dired.el (dired-load-hook):
* lisp/expand.el (expand-load-hook):
* lisp/ibuffer.el (ibuffer-load-hook):
* lisp/msb.el (msb-after-load-hook):
* lisp/recentf.el (recentf-load-hook):
* lisp/speedbar.el (speedbar-load-hook):
* lisp/strokes.el (strokes-load-hook):
* lisp/calc/calc.el (calc-load-hook):
* lisp/calendar/timeclock.el (timeclock-load-hook):
* lisp/emulation/viper-init.el (viper-load-hook):
* lisp/progmodes/cwarn.el (cwarn-load-hook):
* lisp/progmodes/idlwave.el (idlwave-load-hook):
* lisp/progmodes/inf-lisp.el (inferior-lisp-load-hook):
* lisp/progmodes/meta-mode.el (meta-mode-load-hook):
* lisp/textmodes/reftex-vars.el (reftex-load-hook):
* lisp/textmodes/table.el (table-load-hook):
* lisp/url/url-vars.el (url-load-hook):
* lisp/vc/ediff-init.el (ediff-load-hook):
Obsolete for with-eval-after-load.
2020-01-16 23:06:04 -08:00
Paul Eggert
365e01cc9f Update copyright year to 2020
Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
2020-01-01 00:59:52 +00:00
Paul Eggert
6b4a97c1c7 Fix some quoting glitches in doc strings 2019-11-11 10:32:53 -08:00
Lars Ingebrigtsen
d3517de4b4 Make url-cookie.el be more resistant against bogus data
* lisp/url/url-cookie.el (url-cookie-handle-set-cookie): Don't bug
out on large max-age values (bug#37974).
2019-10-29 22:53:00 +01:00
Hong Xu
9aa13cd4be Make url-hexify-string accept a list of allowed chars (bug#26469)
* lisp/url/url-util.el (url-hexify-string): Accept a list of allowed
chars.
* doc/misc/url.texi (URI Encoding): Update url-hexify-string doc and
index improvements (bug#24694).
2019-10-14 06:46:47 +02:00
Eli Zaretskii
433dd77b4a Fix a typo in url-http.el
* lisp/url/url-http.el (url-http-parse-headers): Fix a typo.
Reported by Mattias Engdegård <mattiase@acm.org>.
2019-10-02 18:24:03 +03:00
Stefan Kangas
12f6b90c85 Remove XEmacs compat code from url-*.el (Bug#37524)
* lisp/url/url-file.el (url-file-build-filename, url-file)
* lisp/url/url-privacy.el (url-setup-privacy-info): Remove XEmacs
compat code.
(url-device-type): Declare obsolete.
2019-10-01 20:25:11 +02:00
Stefan Kangas
41f59e71e2 Move url-ns.el to obsolete/
* lisp/url/url-ns.el: Move from here...
* lisp/obsolete/url-ns.el: ...to here.  (Bug#19822)
2019-10-01 18:05:09 +02:00
Lars Ingebrigtsen
f9f8dcae70 Allow url-insert-file-contents to work on 304 responses
* lisp/url/url-http.el (url-http--insert-file-helper): If the
server answers 304 Not modified, then that's not an error
(bug#26063).
2019-09-24 10:43:32 +02:00
Lars Ingebrigtsen
881f620930 Clean up url-parse-args slightly
* lisp/url/url-util.el (url-parse-args): Don't leave temporary
buffer behind.  Clean up slightly.
2019-09-24 10:43:32 +02:00
Lars Ingebrigtsen
1f137133ed Fix old problem with HTTPS HTTP 0.9 sentinels
* lisp/url/url-http.el (url-http-end-of-document-sentinel): Pass
on the tls parameter if we have HTTPS (bug#14983).
2019-09-24 10:01:34 +02:00
Paul Eggert
946a56a10f Update some URLs
This mostly changes http: to https: in URLs.  It also updates
some URLs that have moved, removes some URLs that no longer
work, recommends against using procmail (procmail.org no
longer works), and removes some mentions of the
no-longer-existing Gmane, LPF and VTW.
It doesn't update all URLs, just the ones I had time for.
* GNUmakefile (help):
* admin/admin.el (manual-doctype-string):
* admin/charsets/Makefile.in (${charsetdir}/ALTERNATIVNYJ.map):
* admin/charsets/mapconv:
* lisp/net/soap-client.el (soap-create-envelope):
* lisp/org/org.el (org-doi-server-url):
* lisp/textmodes/bibtex.el (bibtex-generate-url-list):
Prefer https: to http: un URLs.
2019-09-23 00:12:52 -07:00
Thomas Fitzsimmons
c02f3125cd Do not recreate full URL for proxied HTTPS requests (Bug#35969)
* lisp/url/url-http.el (url-http-create-request): Do not recreate
full URL for proxied HTTPS requests.
(url-https-proxy-after-change-function): Do not bind
url-http-proxy to nil before calling url-http-create-request.
(Bug#35969)
2019-08-15 23:29:51 -04:00
Eli Zaretskii
629068a89d Fix fetching URLs with stuff that looks like HTTP headers
* lisp/url/url-http.el (url-http-parse-headers): Narrow the
buffer to the headers at the beginning to make sure
url-handle-content-transfer-encoding uses the correct
headers.  (Bug#37023)
2019-08-14 17:53:14 +03:00
Paul Eggert
89c63b3522 New function time-convert
This replaces the awkward reuse of encode-time to both convert
calendrical timestamps to Lisp timestamps, and to convert Lisp
timestamps to other forms.  Now, encode-time does just the
former and the new function does just the latter.
The new function builds on a suggestion by Lars Ingebrigtsen in:
https://lists.gnu.org/r/emacs-devel/2019-07/msg00801.html
and refined by Stefan Monnier in:
https://lists.gnu.org/r/emacs-devel/2019-07/msg00803.html
* doc/lispref/os.texi (Time of Day, Time Conversion):
* doc/misc/emacs-mime.texi (time-date):
* etc/NEWS: Update documentation.
* lisp/calendar/cal-dst.el (calendar-next-time-zone-transition):
* lisp/calendar/time-date.el (seconds-to-time, days-to-time):
* lisp/calendar/timeclock.el (timeclock-seconds-to-time):
* lisp/cedet/ede/detect.el (ede-detect-qtest):
* lisp/completion.el (cmpl-hours-since-origin):
* lisp/ecomplete.el (ecomplete-add-item):
* lisp/emacs-lisp/cl-extra.el (cl--random-time):
* lisp/emacs-lisp/timer.el (timer--time-setter)
(timer-next-integral-multiple-of-time):
* lisp/find-lisp.el (find-lisp-format-time):
* lisp/gnus/gnus-diary.el (gnus-user-format-function-d):
* lisp/gnus/gnus-group.el (gnus-group-set-timestamp):
* lisp/gnus/gnus-icalendar.el (gnus-icalendar-show-org-agenda):
* lisp/gnus/nnrss.el (nnrss-normalize-date):
* lisp/gnus/nnspool.el (nnspool-request-newgroups):
* lisp/net/ntlm.el (ntlm-compute-timestamp):
* lisp/net/pop3.el (pop3-uidl-dele):
* lisp/obsolete/vc-arch.el (vc-arch-add-tagline):
* lisp/org/org-clock.el (org-clock-get-clocked-time)
(org-clock-resolve, org-resolve-clocks, org-clock-in)
(org-clock-out, org-clock-sum):
* lisp/org/org-id.el (org-id-uuid, org-id-time-to-b36):
* lisp/org/ox-publish.el (org-publish-cache-ctime-of-src):
* lisp/proced.el (proced-format-time):
* lisp/progmodes/cc-cmds.el (c-progress-init)
(c-progress-update):
* lisp/progmodes/cperl-mode.el (cperl-time-fontification):
* lisp/progmodes/flymake.el (flymake--schedule-timer-maybe):
* lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
(vhdl-fix-case-region-1):
* lisp/tar-mode.el (tar-octal-time):
* lisp/time.el (emacs-uptime):
* lisp/url/url-auth.el (url-digest-auth-make-cnonce):
* lisp/url/url-util.el (url-lazy-message):
* lisp/vc/vc-cvs.el (vc-cvs-parse-entry):
* lisp/vc/vc-hg.el (vc-hg-state-fast):
* lisp/xt-mouse.el (xterm-mouse-event):
* test/lisp/emacs-lisp/timer-tests.el:
(timer-next-integral-multiple-of-time-2):
Use time-convert, not encode-time.
* lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
Don’t use now-removed FORM argument for encode-time.
It wasn’t crucial anyway.
* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns): Add time-convert.
* lisp/emacs-lisp/elint.el (elint-unknown-builtin-args):
Update encode-time signature to match current arg set.
* lisp/emacs-lisp/timer.el (timer-next-integral-multiple-of-time):
Use timer-convert with t rather than doing it by hand.
* src/timefns.c (time_hz_ticks, time_form_stamp, lisp_time_form_stamp):
Remove; no longer needed.
(decode_lisp_time): Rturn the form instead of having a *PFORM arg.
All uses changed.
(time_arith): Just return TICKS if HZ is 1.
(Fencode_time): Remove argument FORM.  All callers changed.
Do not attempt to encode time values; just encode
decoded (calendrical) times.
Unless CURRENT_TIME_LIST, just return VALUE since HZ is 1.
(Ftime_convert): New function, which does the time value
conversion that bleeding-edge encode-time formerly did.
Return TIME if it is easy to see that it is already
of the correct form.
(Fcurrent_time): Mention in doc that the form is planned to change.
* test/src/timefns-tests.el (decode-then-encode-time):
Don’t use (encode-time nil).
2019-08-05 18:37:29 -07:00
Mattias Engdegård
408e75e819 Clean up file-size-function
It is now called `byte-count-to-string-function', and used instead of
calling `file-size-human-readable' directly where appropriate.

* lisp/files.el (file-size-human-readable-iec): New.
(file-size-function): Rename to byte-count-to-string-function.  Better
default value.  Eliminate lambda.  Better default for custom choice.
Put in group `files'.  More descriptive doc string.  Move.
(out-of-memory-warning-percentage, warn-maybe-out-of-memory)
(get-free-disk-space):
* lisp/dired.el (dired-number-of-marked-files):
* lisp/url/url-http.el (url-http-simple-after-change-function)
(url-http-content-length-after-change-function):
Use byte-count-to-string-function.
* test/lisp/files-test.el (files-test-file-size-human-readable):
Test file-size-human-readable-iec.
2019-08-02 12:38:44 +02:00
Lars Ingebrigtsen
c8f1e17e6b Rewrite `url-dav-process-date-property' to use parse-time
* lisp/url/url-dav.el (url-dav-iso8601-regexp): Remove.
(url-dav-process-date-property): Rewrite to use
`parse-iso8601-time-string'.
2019-07-31 21:47:29 +02:00
Pip Cet
e310843d9d Don't double-decompress cached HTTP responses (bug#36773)
* lisp/url/url-http.el (url-handle-content-transfer-encoding): Modify
the message headers as well as the message body to reflect
decompression.
* lisp/mail/mail-utils.el (mail-fetch-field): Add DELETE argument, to
delete header lines included in the result.
2019-07-27 13:54:04 +03:00
Lars Ingebrigtsen
64b469f6ae Don't infloop in url.el when sending invalid basic auth
* lisp/url/url-http.el (url-http-handle-authentication): Bail out
if the wrong credentials were passed to the server instead of
inflooping (bug#27022).
2019-07-26 10:55:45 +02:00
Lars Ingebrigtsen
655fe3fe0d Fix long credentials when using auth in url.el
* lisp/url/url-auth.el (url-basic-auth): When base64-ing
credentials, don't let bsae64-encode-string split the result into
several lines, because servers do not understand that (bug#36619).
2019-07-13 01:31:24 +02:00
Lars Ingebrigtsen
0990ae5a8b Don't set url-mime-charset-string from set-language-environment
* lisp/url/url-vars.el (url-set-mime-charset-string): Make
obsolete and don't add to set-language-environment-hook
(bug#36268).  If you loaded url-vars before calling
set-language-environment, you would suddenly get an unusable long
url-mime-charset-string.
2019-07-09 03:44:13 +02:00
Lars Ingebrigtsen
84047666a7 Remove compat code in url-mime-charset-string
* lisp/url/url-vars.el (url-mime-charset-string): Remove compat code.
2019-07-09 03:44:13 +02:00
Mattias Engdegård
866f527ddf Optional space and unit in `file-size-human-readable' (bug#35756)
To improve readability of strings produced by
`file-size-human-readable', add two optional arguments:

- SPACE, to provide a string (typically a space or non-breaking space)
to put between the number and unit.  For compatibility, the default is
an empty string.

- UNIT, a string to use as unit.  For compatibility, the default is
"B" in `iec' mode and the empty string otherwise.

Also fix a glitch with small numbers in `iec' mode which caused a
stray "i" in the result.

* lisp/files.el (file-size-human-readable):
Add optional SPACE and UNIT arguments and handle small numbers correctly.
(files--ask-user-about-large-file, warn-maybe-out-of-memory):
Call with `iec' and space.
* test/lisp/files-tests.el (files-test-file-size-human-readable): New test.
* lisp/url/url-http.el (url-http-simple-after-change-function)
(url-http-content-length-after-change-function): Call with `iec' and space.
* etc/NEWS (Lisp Changes): Mention the change.
2019-06-23 20:30:50 +02:00
Michael Albinus
06499a6fe6 Make url-tramp more robust
* lisp/url/url-tramp.el (url-tramp-convert-url-to-tramp)
(url-tramp-convert-tramp-to-url): Check, that obj is non-nil.
2019-06-15 12:19:01 +02:00
Paul Eggert
f744797af1 Go back to "Maintainer: emacs-devel@gnu.org"
Restore lines saying "Maintainer: emacs-devel@gnu.org" when there is
no special maintainer for a file.  Although this wasn't documented
it was common practice and removing the lines didn't have consensus.
2019-05-25 14:25:18 -07:00
Basil L. Contovounesios
72047556fa Fix url-copy-file argument handling
For discussion, see the following thread:
https://lists.gnu.org/archive/html/emacs-devel/2019-05/msg00500.html
* lisp/url/url-handlers.el: Update autoloaded docstrings.
Quote function symbols as such.
(url-handler-regexp): Make grouping construct shy.
(url-file-handler, url-insert-buffer-contents)
(url-handlers-create-wrapper, url-handlers-set-buffer-mode):
Simplify.
(url-file-handler-identity): Clarify calling convention.
(file-name-absolute-p, url-file-local-copy): Mark ignored arguments
as such.
(url-handler-directory-file-name): Prefer string comparison over
regexp match where either will do.
(url-copy-file): Handle integer as third argument as per copy-file.
2019-05-23 01:41:00 +01:00
Paul Eggert
bef1be8730 Fixes for "Maintainer:" and related lines
Mostly, this just removes "Maintainer: emacs-devel@gnu.org" lines,
which are not that useful.  It also cleans up and regularizes a
few similar lines.
2019-05-19 21:34:27 -07:00
Stefan Monnier
5f9671e57e * lisp/emacs-lisp/package.el: Fix decoding of downloaded files
This is a different fix for bug#34909, which should also fix bug#35739.

Our downloading code used to automatically decode the result according
to the usual heuristics for files.  This caused problems when we later
needed to save the data in a file that needed to be byte-for-byte
equal to the original in order to pass the signature verification,
especially because we didn't keep track of which coding-system was
used to decode the data.

(package--unless-error): New macro extracted from
package--with-response-buffer-1, so that we can specify edebug and
indent specs.
(package--with-response-buffer-1): Use it.  More importantly, change
code so it runs `body` in a unibyte buffer with undecoded data.
(package--download-one-archive): Don't encode with utf-8 since the data
is not decoded yet.
(describe-package-1): Explicitly decode the readem.txt files here.

* lisp/url/url-handlers.el (url-insert-file-contents): Use it.
(url-insert): Don't decode if buffer is unibyte.

* lisp/url/url-http.el (url-http--insert-file-helper): New function,
extracted from url-insert-file-contents.
2019-05-18 18:32:47 -04:00
Lars Ingebrigtsen
8f544c6104 Describe error data in url-retrieve better
* lisp/url/url.el (url-retrieve): Describe the error data more in
depth (bug#25735).
2019-05-15 09:45:08 +02:00
Lars Ingebrigtsen
ceed3d7557 Don't have url-basic-auth bug out when called with an URL string
* lisp/url/url-auth.el (url-basic-auth): Pass the parsed URL
object to the prompting function instead of the parameter that's
possibly a string (bug#26708).  Passing url-basic-auth with a
string parameter would fail if passed a non-parsed URL.
2019-05-15 07:34:35 +02:00
Lars Ingebrigtsen
4f1df40db3 Fix obscure HTTP chunked parsing problem
* lisp/url/url-http.el
(url-http-chunked-encoding-after-change-function): Ensure that we
parse the entire initial chunked header as the length (bug#35658).
2019-05-15 07:12:26 +02:00
Lars Ingebrigtsen
15bd081ce6 Indent url-http-chunked-encoding-after-change-function 2019-05-15 06:59:12 +02:00
Thomas Fitzsimmons
4fa6029f7e Fix url-auth prompts when realm is empty
* lisp/url/url-auth.el (url-get-authentication): When realm is
empty, use the entire URL in the prompt (bug#35688).
2019-05-15 06:14:21 +02:00
Lars Ingebrigtsen
8fe73515ad Make eww understand #fragment URLs at point interactively
* lisp/net/eww.el (eww-suggest-uris): Use
thing-at-point-url-at-point instead of url-get-url-at-point
(bug#31927) because it's much better at guessing what the URL
actually is (especially with #fragments).
2019-05-13 15:45:52 -04:00
Paul Eggert
7ddd08bd3e Omit/rewrite useless regexp repetitions
Problem reported by Mattias Engdegård in:
https://lists.gnu.org/r/emacs-devel/2019-04/msg00527.html
* lisp/align.el (align-rules-list):
* lisp/cedet/srecode/srt-mode.el (srecode-font-lock-keywords):
* lisp/emacs-lisp/copyright.el (copyright-regexp):
* lisp/erc/erc-backend.el (JOIN):
* lisp/erc/erc-goodies.el (erc-unmorse):
* lisp/mail/mail-extr.el (mail-extr-telephone-extension-pattern):
* lisp/net/tramp-adb.el (tramp-adb-prompt):
* lisp/org/org-table.el (org-table-range-regexp):
* lisp/progmodes/idlwave.el (idlwave-where):
* lisp/progmodes/verilog-mode.el (verilog-declaration-re-2-no-macro)
(verilog-declaration-re-2-macro, verilog-delete-auto-buffer)
(verilog-auto-inst-port):
* lisp/url/url-misc.el (url-data):
Omit or rewrite useless repetitions that risk being very slow in
the backtracking regexp engine in Emacs.
2019-04-12 19:43:41 -07:00
Dmitry Gutov
8635e011ed Don't signal error from url debug functions
* lisp/url/url-http.el (url-http-debug): Don't signal error.

* lisp/url/url-util.el (url-debug): Same (bug#34763).
2019-04-13 03:36:45 +03:00
Noam Postavsky
b36913d803 Allow partial decompression (Bug#33133)
* src/decompress.c (Fzlib_decompress_region): Add optional
ALLOW-PARTIAL parameter.
* lisp/url/url-http.el (url-handle-content-transfer-encoding): Use it.
* doc/lispref/text.texi (Decompression): Document it.
* etc/NEWS: Announce it.
2019-04-02 22:02:32 -04:00
Glenn Morris
1fc6afbdf1 Merge from origin/emacs-26
24b6e6e (origin/emacs-26) * etc/AUTHORS: Update.
2f22a17 * ; ChangeLog.3 update
0f523de Improve indexing of the user manual
bd5795e Fix url-copy-file arglist
eaa188a ; * admin/notes/bugtracker: Minor additions and updates.
5ed05fb Fix downloading updates for packages with non-ASCII descriptions
e9f2d1f * etc/NEWS: Remove temporary markers.
24fc133 * doc/misc/cc-mode.texi (Config Basics): in @itemize, @asis -...
0f325d1 Don't clobber 'comint-input-autoexpand' in 'read-shell-command'
bc75589 Document restrictions when setting window margins, fringes or...
cc4cebf More improvements for 'read-buffer's doc string
d026d9a * lisp/progmodes/cc-defs.el: Update c-version to 5.33.2 for E...
5dbf08b * src/minibuf.c (Fread_buffer): Minor doc fixes.  (Bug#34749)

# Conflicts:
#	etc/NEWS
#	lisp/url/url-handlers.el
2019-03-20 13:47:07 -07:00
Paul Eggert
e14c0d748e More minor regex cleanup
Problems reported by Mattias Engdegård in:
https://lists.gnu.org/r/emacs-devel/2019-03/msg00643.html
plus a few others that I noticed.
* lisp/auth-source-pass.el (auth-source-pass--parse-data):
* lisp/org/org-datetree.el (org-datetree--find-create):
* lisp/org/org-pcomplete.el (org-thing-at-point):
* lisp/progmodes/js.el (js--end-of-do-while-loop-p):
* lisp/textmodes/sgml-mode.el:
(sgml-electric-tag-pair-before-change-function):
* lisp/textmodes/texnfo-upd.el (texinfo-menu-copy-old-description):
* lisp/url/url-http.el (url-http-parse-response):
Fix regular expression and similar syntax.
2019-03-19 18:47:53 -07:00
Basil L. Contovounesios
bd5795e0d1 Fix url-copy-file arglist
* lisp/url/url-handlers.el: Silence byte-compiler.
(url-copy-file): Add 6th argument following change to copy-file in
2012-12-16T19:22:27+01:00!romain@orebokech.com. (bug#4410)
2019-03-19 16:31:23 +00:00
Paul Eggert
bc2a93d5b7 Fix more regular expression typos
Problem reported by Mattias Engdegård in:
https://lists.gnu.org/r/emacs-devel/2019-03/msg00548.html
except that I didn’t address the issues involving Hebrew,
or involving comint-prompt-regexp.
* lisp/align.el (align-rules-list, align-exclude-rules-list):
* lisp/auth-source-pass.el (auth-source-pass--parse-secret)
(auth-source-pass--parse-data):
* lisp/cedet/data-debug.el (data-debug-next)
(data-debug-prev, data-debug-expand-or-contract):
* lisp/comint.el (comint-within-quotes):
* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
* lisp/emulation/viper-ex.el (ex-cmd-complete):
* lisp/gnus/gnus-cite.el (gnus-message-search-citation-line):
* lisp/gnus/nnir.el (nnir-imap-end-of-input):
* lisp/mail/mail-extr.el (mail-extr-all-letters):
* lisp/minibuffer.el (minibuffer-maybe-quote-filename):
* lisp/nxml/rng-nxml.el (rng-complete-tag)
(rng-complete-end-tag, rng-complete-attribute-name):
* lisp/obsolete/vip.el (vip-get-ex-token, vip-get-ex-pat):
* lisp/org/org-pcomplete.el (org-thing-at-point):
* lisp/org/org.el (org-set-tags)
(org-increase-number-at-point)
(org-fill-line-break-nobreak-p):
* lisp/pcomplete.el (pcomplete-parse-comint-arguments):
* lisp/progmodes/ada-mode.el (ada-compile-goto-error):
* lisp/progmodes/cperl-mode.el (cperl-highlight-charclass)
(cperl-find-pods-heres, cperl-not-bad-style-regexp)
(cperl-regext-to-level-start):
* lisp/progmodes/ebnf-yac.el (ebnf-yac-skip-spaces):
* lisp/progmodes/flymake-proc.el (flymake-proc-master-tex-init):
* lisp/progmodes/flymake.el (flymake-diag-region):
* lisp/progmodes/fortran.el (fortran-current-line-indentation):
* lisp/progmodes/idlw-complete-structtag.el:
(idlwave-complete-structure-tag):
* lisp/progmodes/idlwave.el (idlwave-complete-sysvar-or-tag):
* lisp/progmodes/prolog.el (prolog-pred-end)
(prolog-clause-info):
* lisp/progmodes/ruby-mode.el (ruby-forward-sexp)
(ruby-backward-sexp):
* lisp/progmodes/verilog-mode.el (verilog-repair-open-comma):
* lisp/term.el (term-within-quotes):
* lisp/textmodes/bib-mode.el (bib-capitalize-title-stop-words):
* lisp/textmodes/refbib.el (r2b-capitalize-title-stop-words):
* lisp/textmodes/reftex-parse.el (reftex-nth-arg):
* lisp/textmodes/rst.el (rst-svn-rev):
* lisp/url/url-http.el (url-http-parse-response):
* test/lisp/progmodes/f90-tests.el (f90-test-bug3730):
Fix regular expression typos.
2019-03-18 17:02:29 -07:00
Eli Zaretskii
9486d87cfe Avoid gratuitous errors in 'url-retrieve-synchronously'
* lisp/url/url-http.el (url-http-debug):
* lisp/url/url-util.el (url-debug): Don't signal an error if
quit-flag is non-nil, but not t.  This could happen because
some unrelated code is running inside while-no-input.
(Bug#34763)
2019-03-13 18:53:08 +02:00