1. 16 Sep, 2019 12 commits
  2. 15 Sep, 2019 13 commits
  3. 14 Sep, 2019 11 commits
    • Paul Eggert's avatar
      Fix gc-elapsed rounding bug · 52172d23
      Paul Eggert authored
      * src/alloc.c (garbage_collect): Don’t accumulate rounding
      errors when computing gc-elapsed.
    • Paul Eggert's avatar
      Improve doc of GC thresholds · 1acc0cc9
      Paul Eggert authored
      * doc/lispref/internals.texi (Garbage Collection), etc/NEWS:
      Warn that control over GC is only approximate.
    • Bruno Félix Rezende Ribeiro's avatar
      Fix picon installation instructions in the Gnus manual · 3f43adac
      Bruno Félix Rezende Ribeiro authored
      * doc/misc/gnus.texi (Picons): Fix instructions for installing
      picons on Debian (bug#37247).
      Copyright-paperwork-exempt: yes
    • Basil L. Contovounesios's avatar
      Fix fileless eww form submission · c6d81434
      Basil L. Contovounesios authored
      * lisp/net/eww.el (eww-submit): Ignore file inputs with no
      associated file name (bug#36520).
    • Lars Ingebrigtsen's avatar
      Add default foreground colours to SVG images · 5a0ab88c
      Lars Ingebrigtsen authored
      * lisp/net/shr.el (svg--wrap-svg): Add a default foreground colour
      to SVG images (bug#37159).  This helps with images like the ones
      in https://en.wikipedia.org/wiki/Banach_fixed-point_theorem that
      specify no foreground or background colours.
      (shr-parse-image-data): Use it.
    • Lars Ingebrigtsen's avatar
      Make eww more liberal when interpreting some invalid HTML · 568f1488
      Lars Ingebrigtsen authored
      * lisp/net/eww.el (eww--preprocess-html): New function (bug#37009)
      to be more lenient with invalid HTML and translate common invalid
      HTML like "a <= b" into "a &lt;= b" to be more liberal in what we
      accept before parsing.
      (eww-display-html): Use it.
      (eww-readable): Ditto.
    • Eli Zaretskii's avatar
    • Tobias Zawada's avatar
      Add a debug declaration to widget-specify-insert · 5f7531f9
      Tobias Zawada authored
      * lisp/wid-edit.el (widget-specify-insert): Add a debug
      declaration (bug#37368).
      Copyright-paperwork-exempt: yes
    • Eli Zaretskii's avatar
      ; * etc/NEWS: Fix last change. · 53a1a29b
      Eli Zaretskii authored
    • Federico Tedin's avatar
      Allow gamegrid-add-score to treat lower scores as better. · 36bf5534
      Federico Tedin authored
      * lisp/play/gamegrid.el (gamegrid-add-score): Add 'reverse' parameter.
      (gamegrid-add-score-with-update-game-score): Add 'reverse' parameter.
      (gamegrid-add-score-with-update-game-score-1): Add 'reverse'
      parameter.  Pass on "-r" argument to update-game-score.
      (gamegrid-add-score-insecure): Add 'reverse' parameter, reverse scores
      when it's non-nil.  (Bug#36867)
      * etc/NEWS: Announce the change.
    • Paul Eggert's avatar
      Improve gc-cons-percentage calculation · bac66302
      Paul Eggert authored
      The old calculation relied on a hodgpodge of partly updated GC
      stats to find a number to multiply gc-cons-percentage by.
      The new one counts data found by the previous GC, plus half of
      the data allocated since then; this is more systematic albeit
      still ad hoc.
      * src/alloc.c (consing_until_gc, gc_threshold, consing_threshold):
      Now EMACS_INT, not intmax_t.
      (HI_THRESHOLD): New macro.
      (tally_consing): New function.
      (make_interval, allocate_string, allocate_string_data)
      (make_float, free_cons, allocate_vectorlike, Fmake_symbol): Use it.
      (allow_garbage_collection, inhibit_garbage_collection)
      (consing_threshold, garbage_collect):
      Use HI_THRESHOLD rather than INTMAX_MAX.
      (consing_threshold): New arg SINCE_GC.  All callers changed.
      (bump_consing_until_gc): Return new consing_until_gc, instead of
      nil.  All callers changed.  Don’t worry about overflow since we
      now saturate at HI_THRESHOLD.  Guess that half of
      recently-allocated objects are still alive, instead of relying on
      the previous (even less-accurate) hodgepodge.
      (maybe_garbage_collect): New function.
      (garbage_collect): Work even if a finalizer disables or enables
      memory profiling.  Do not use malloc_probe if GC reclaimed nothing.
      * src/lisp.h (maybe_gc): Call maybe_garbage_collect instead
      of garbage_collect.
  4. 13 Sep, 2019 4 commits
    • Paul Eggert's avatar
      Simplify GC statistics-gathering · e4fb98b5
      Paul Eggert authored
      * src/alloc.c (make_interval, allocate_string, make_float)
      (free_cons, Fcons, setup_on_free_list)
      (allocate_vector_from_block, Fmake_symbol):
      Do not update gcstat, since it is for statistics from the most
      recent GC, not for a partially-updated hodgepodge.
      (sweep_vectors): Update gcstat, since setup_on_free_list
      no longer does.
      (garbage_collect_1): Rename to garbage_collect and adopt its API.
      Remove the old garbage_collect, which is no longer needed.
      All callers changed.
    • Gemini Lasswell's avatar
      Don't build print-number-table unless it will be used · 0dba340d
      Gemini Lasswell authored
      There are only a few users of print-number-table, and none of them use
      it when print-circle is nil.  A couple of them used to.  print_object
      was changed in 2012-04-20 "* src/print.c (print_preprocess): Only
      check print_depth if print-circle is nil".
      byte-compile-output-docform which uses print-number-table binds
      print-circle to t before printing unless
      byte-compile-disable-print-circle is set, but that variable has been
      marked obsolete since 24.1.
      * src/print.c (print_preprocess): Assert Vprint_circle is non-nil.
      Remove code handling the case when Vprint_circle is nil.
      (print, Fprint_preprocess): Don't call print_preprocess unless
      Vprint_circle is non-nil.
      (print_object): Remove comment referencing removed code in
    • Gemini Lasswell's avatar
      Create common tests for print.c and cl-print.el · 3bd6ef40
      Gemini Lasswell authored
      * test/lisp/emacs-lisp/cl-print-tests.el
      (cl-print--test, cl-print-tests-1, cl-print-tests-2)
      (cl-print-tests-3, cl-print-tests-4, cl-print-tests-5)
      (cl-print-tests-strings, cl-print-circle, cl-print-circle-2):
      * test/src/print-tests.el (print-tests--prin1-to-string): New
      (print-tests--deftest): New macro.
      (print-hex-backslash, print-read-roundtrip, print-bignum): Define with
      print-tests--deftest and use print-tests--prin1-to-string.
      (print-tests--prints-with-charset-p): Use
      (print-tests--print-charset-text-property-default): Define with
      (print-tests-continuous-numbering, print-tests-1, print-tests-2)
      (print-tests-3, print-tests-4, print-tests-5)
      (print-tests-strings, print-circle, print-circle-2): New tests.
      (print--test, print-tests-struct): New cl-defstructs.
    • Gemini Lasswell's avatar
      Fix unnecessary hash table creation in cl-prin1 (bug#36566) · 6eaf39d2
      Gemini Lasswell authored
      cl-prin1 prints all its punctuation by passing strings to prin1.  When
      print-circle was set, print_preprocess was creating a new hash table
      for each string, causing excessive garbage collection when printing
      large Lisp objects with cl-prin1.
      * src/print.c (print_number_index): Fix typo in comment above.
      (PRINT_CIRCLE_CANDIDATE_P): Don't create print_number_table
      for top-level strings with no properties, except when
      print_continuous_numbering is on.