Hi Racketeers,

Laurent Orseau asked if it’s possible for the release announcement to
include @history changes (compared to the previous release), because some
small but useful changes might go unnoticed otherwise. I think this is a
great idea, so I tried to implement the feature. The result for 8.0 release
is included at the end of the email. However, I’m not satisfied with my
current approach, and I would appreciate it if anyone could suggest a way
to improve it.

My current workflow is:

   1. Download two Racket versions that I want to diff @history.
   2. Patch share/pkgs/scribble-lib on both versions
   3. Run raco setup -c scribblings; HISTORY_INFO_PATH=/path/to/info raco
   setup scribblings on both versions
   4. Run the diffing program on the two info files.

Patching scribble-lib is something I want to avoid. Specifically, I need to
modify scribble-lib to

   - modify history to recognize HISTORY_INFO_PATH and emit information.
   This alone is enough to get all information except the “who I am” field
   (see below)
   - modify all documenting forms, like defform, defproc, etc. so that it
   cooperates with history to supply “who I am” field. This is further
   complicated by the fact that deftogether exists, so I need to hack the
   with-togetherable-racket-variables protocol to keep the information
   around.

It would be nice if I don’t have to modify scribble-lib, or, failing that,
avoid touching documenting forms. Isn’t it possible for history to know
which defform it’s under?
Anyhow, here's the output for v8.0

who: #%declare
package: base
source: racket-doc/scribblings/reference/syntax.scrbl:433:19
desc:
  Changed in version 7.9.0.5: Added #:unsafe.


who: system-type
package: base
source: racket-doc/scribblings/reference/runtime.scrbl:132:19
desc:
  Changed in version 7.9.0.6: Added 'os* and 'arch modes.


who: _cprocedure
package: base
source: racket-doc/scribblings/foreign/types.scrbl:780:19
desc:
  Changed in version 7.9.0.16: Added the #:varargs-after argument.


who: _fun
package: base
source: racket-doc/scribblings/foreign/types.scrbl:916:19
desc:
  Changed in version 7.9.0.16: Added the #:varargs-after option.


source: racket-doc/scribblings/raco/setup.scrbl:383:19
desc:
  Changed in version 7.9.0.3: Added PLT_SETUP_NO_FORCE_GC,
PLT_SETUP_SHOW_TIMESTAMPS, and --sync-docs-only.


source: racket-doc/scribblings/raco/decompile.scrbl:37:19
desc:
  Changed in version 1.9: Added --partial-fasl.


package: compiler-lib
source: racket-doc/scribblings/raco/test.scrbl:198:19
desc:
  Changed in version 1.8: Added --output and -o.


package: base
source: racket-doc/scribblings/reference/syntax-model.scrbl:450:19
desc:
  Changed in version 7.9.0.13: Added implicit-made-explicit properties.


who: fx+/wraparound
package: base
source: racket-doc/scribblings/reference/fixnums.scrbl:104:17
desc:
  Added in version 7.9.0.6.


who: bytes-open-converter
package: base
source: racket-doc/scribblings/reference/bytes.scrbl:520:19
desc:
  Changed in version 7.9.0.17: Added built-in converters for "WTF-8",
<"WTF-8-permissive", and "WTF-16".


who: hash-intersect
package: base
source: racket-doc/scribblings/reference/hashes.scrbl:795:17
desc:
  Added in version 7.8.0.11.


package: base
source: racket-doc/scribblings/reference/cont.scrbl:105:19
desc:
  Changed in version 7.9.0.13: The name argument gives the name of the
prompt tag.


who: object-name
package: base
source: racket-doc/scribblings/reference/struct-inspectors.scrbl:191:20
desc:
  Changed in version 7.9.0.13: Recognize the name of continuation prompt
tags.


who: unsafe-fx+/wraparound
package: base
source: racket-doc/scribblings/reference/unsafe.scrbl:91:17
desc:
  Added in version 7.9.0.6.


who: unsafe-set-immutable-car!
package: base
source: racket-doc/scribblings/reference/unsafe.scrbl:306:17
desc:
  Added in version 7.9.0.18.


who: editor:silent-cancel-on-save-file-out-of-date?
package: gui-lib
source: gui-lib/framework/main.rkt:1634:18
desc:
  Added in version 1.53.


who: make
package: gui-lib
source: gui-doc/scribblings/gui/tab-panel-class.scrbl:65:19
desc:
  Changed in version 1.55: Added the 'can-reorder and 'can-close styles.


who: on-reorder
package: gui-lib
source: gui-doc/scribblings/gui/tab-panel-class.scrbl:121:17
desc:
  Added in version 1.55.


who: on-close-request
package: gui-lib
source: gui-doc/scribblings/gui/tab-panel-class.scrbl:132:17
desc:
  Added in version 1.55.


who: on-superwindow-activate
package: gui-lib
source: gui-doc/scribblings/gui/window-intf.scrbl:481:19
desc:
  Added in version 1.54.


who: message-box/custom
package: gui-lib
source: gui-doc/scribblings/gui/dialog-funcs.scrbl:355:19
desc:
  Changed in version 1.53: Added the return-the-dialog? argument and the
ability to change the dialog box's message.


who: message+check-box
package: gui-lib
source: gui-doc/scribblings/gui/dialog-funcs.scrbl:388:19
desc:
  Changed in version 1.53: Added the return-the-dialog? argument and the
ability to change the dialog box's message and check label.


who: current-text-keymap-initializer
package: gui-lib
source: gui-doc/scribblings/gui/editor-funcs.scrbl:144:19
desc:
  Changed in version 1.51: Changed Unix keybindings in the default
initializer to match Windows, dropping start-of-line and end-of-line
bindings.


who: make-unix-socket-tcp@
package: unix-socket-lib
source: unix-socket-doc/scribblings/socket/unix-socket.scrbl:138:17
desc:
  Added in version 1.3.


who: close-ith-tab
package: drracket
source: drracket/scribblings/tools/unit.scrbl:669:19
desc:
  Added in version 1.9.


who: close-given-tab
package: drracket
source: drracket/scribblings/tools/unit.scrbl:675:19
desc:
  Added in version 1.9.


who: head-addition
package: scribble-lib
source: scribble-doc/scribblings/scribble/core.scrbl:1860:17
desc:
  Added in version 1.38.

Thanks,
Sorawee (Oak)

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/CADcuegv5SrkCB8F7M9V9Wwcigbez50rAdasN-koB7QGCAYU91w%40mail.gmail.com.

Reply via email to