Commit graph

27 commits

Author SHA1 Message Date
Gabor Melis 1b4ec23342 doc: remove unnecessary markup 2026-06-30 17:00:48 +02:00
Gabor Melis 316291e371 doc: update lisp definition docstrings for Markdown
This is a follow up to the "PAXlike docs" commit.
2026-06-29 14:01:31 +02:00
Gabor Melis 2868d4dd0e doc: define and clean up docstring syntax
Previously, the format was ad-hoc and implicitly defined by
doc/manual/docstrings.lisp. Now, it is a bit less ad-hoc and still
implicitly defined docstrings.lisp.

The syntax is now a simple, strict subset of Markdown with escaping
extensions. The long comment near the top of docstrings.lisp has the
documentation.

Some notable changes:

- Markdown backticks are supported (e.g. `exit`(3),
  `/usr/local/bin/`).

- When the heuristic codification is overly eager, use backslashes to
  prevent codification (e.g. \\HTTP, where the backslash is doubled
  assuming that this is in a docstring).

- It is now possible to have code that's not downcased
  (`\\\\AC_LOCAL`, backslashes doubled again).

- Fenced code blocks are supported (but use them sparingly).

- Texinfo @itemize is used instead of @table.

- Texinfo @var was inconsistently used at best. What used to be @var
  is now simply @code.

For the user, the most visible effect of this change is that the
manual has much fewer errors in codification, and a few docstrings
have backticks and escapes in them, which should be acceptably
readable in the sources or via CL:DOCUMENTATION.
2026-05-30 11:14:29 +02:00
Douglas Katzman 0c2ea6c9e2 Remove post-compilation dependence of sb-md5 on sb-rotate-byte 2026-01-13 11:37:31 -05:00
Christophe Rhodes baa9da2fc3 Reduce SB-MD5's compiler policy restrictions
Do not do anything in the :LOAD-TOPLEVEL case (the common case for
requiring the sb-md5 contrib module).  Also undo the compiler policy
restriction used to compile the md5 routines at the end of the file.
2025-11-18 22:29:26 +00:00
Douglas Katzman 23efffc133 Change some defparameters to constant or global 2025-05-31 19:39:03 +00:00
Stas Boukarev c5b8954b53 sb-md5: work on large arrays.
For some reason it was restricted to (unsigned-byte 29) indexes.
2024-07-04 01:22:18 +03:00
Douglas Katzman 5206ce5483 Workaround extremely suboptimal alien-funcall 2022-09-04 13:27:34 -04:00
Douglas Katzman 1d145d8076 Supress style-warning 2021-06-22 19:41:20 -04:00
Douglas Katzman ab6658fec3 Tidy up md5 weirdness
* MD5SUM-SEQUENCE didn't just "deprecate" giving a string as the sequence.
  It plain old doesn't work; and calling FILL-BLOCK-CHAR can't happen.

* It's poor style to use UB8-BASH-COPY on arrays whose element widths
  are not the same; e.g. it copied from (simple-array (unsigned-byte 8) 25)
  to something different in its tests, and who knows what else.
  It used to be worse until I fixed the overun/underrun problems in the
  UB<n>-BASH-COPY functions, but still it's confusing because those are
  defined in terms of "elements", not bytes.
  %BYTE-BLT is more logical in that it means "octets", as does "UBB"
  but that doesn't mean it's an approved use, because I added assertions
  (if #+sb-devel) that things in bit-bash are called only as expected.
2021-06-16 20:40:18 -04:00
Douglas Katzman fedb5a8420 Fix spelling 2020-06-14 15:33:03 -04:00
Douglas Katzman 0726ac95e2 Set SYSTEM-PACKAGE-P bit for contrib modules 2020-02-25 17:03:10 -05:00
Jan Moringen acfde66e5a Fix more redundant and unsatisfiable read-time conditionals 2019-04-14 18:31:25 +02:00
Douglas Katzman 1d44b0f080 Incorporate latest code from MD5 github repo 2017-04-21 15:47:26 -04:00
Jan Moringen c6acb99363 sb-md5: Silence compiler notes for "inefficient" MACROLET body 2017-01-29 16:05:53 +01:00
Jan Moringen cb2b8a3d17 sb-md5: Fix inlining failure warning for FILL-BLOCK{,-UB8,-CHAR} 2016-01-10 16:32:07 +01:00
Stas Boukarev f9f2c03054 Remove CMU conditionals from sb-md5.
It's not going to build on CMUCL anyway.
2015-11-02 03:54:46 +03:00
Nikodemus Siivola 26265f9638 1.0.12.5: WITH-ARRAY-DATA touchups
* Eliminate some double-bounds checks: since WITH-ARRAY-DATA does
  bounds checking, there is no need to vet START and END with
  %CHECK-VECTOR-SEQUENCE-BOUNDS.

* Eliminate some fill-pointer confusion: Since WITH-ARRAY-DATA is
  used both in contexts where fill-pointer needs to be used, and
  in contexts where we only care about the total array size, add
  a :CHECK-FILL-POINTER argument to WITH-ARRAY-DATA.

* Do bounds checking in WITH-ARRAY-DATA based on
  INSERT-ARRAY-BOUNDS-CHECKS policy -- not SPEED vs. SAFETY
  comparison. Adjust tests to check for this.
2007-11-29 17:30:11 +00:00
Nathan Froyd bbb52aeac5 0.9.46.7:
Fix SB-MD5 bugs:
	* Updating the MD5 state with a "short" sequence was buggy;
	  ...and the moral of the story is: (SAFETY 0) hides real bugs
	* MD5SUM-SEQUENCE did not respect fill pointers.
2005-11-16 15:07:06 +00:00
William Harold Newman 4898ef32c6 0.9.2.43:
another slice of whitespace canonicalization
	(Anyone who ends up here with "cvs annotate" probably
		wants to look at the "tabby" tagged version.)
2005-07-14 16:30:05 +00:00
Christophe Rhodes e8bb87b256 0.9.0.33:
Make SB-MD5 enforce its requirements.
	... also keep lambda lists around, for manual autogroveling
		purposes
2005-05-15 15:03:07 +00:00
Nathan Froyd 338732358d 0.8.21.5:
Enable faster REPLACE on declared specialized arrays.

	Overview of necessary machinery:
	* New %VECTOR-RAW-BITS and %SET-VECTOR-RAW-BITS functions/VOPs
	  which automatically take into account VECTOR-DATA-OFFSET
	  (eliminates tedium associated with previous bit-bashing code
	   and makes things slightly faster).  It's not clear if the
	  old %RAW-BITS and %SET-RAW-BITS functions need to remain;
	* Generalize the old bit-bashing code to generate bit-bashers
	  for differently sized "bytes" (1-bit, 2-bit, 4-bit, etc.);
	* Add REPLACE transforms for most specialized array types
	  (those with elements not larger than the word size);
	* Replace various incantations of COPY-FROM-SYSTEM-AREA,
	  COPY-TO-SYSTEM-AREA, BIT-BASH-COPY, etc. with their new
	  width-aware equivalents (this accounts for the bulk of the
	  changed files, if not the changed lines);
	* Add systematic tests for UB*-BASH-{FILL,COPY};
	* Add generalized SUBSEQ and COPY-SEQ transforms while we're
	  at it (FILL would be nice to have, but is a little bit
	  trickier to do in the general case).

	These changes also open up the possibility of removing %BYTE-BLT
	  from the sources.  Benefits: decrease in the number of
	  WITHOUT-GCING forms required, less calling out to C, more of
	  the system in Lisp, etc.  %BYTE-BLT remains in this version,
	  but may be removed if there is sufficient support for its
	  removal.
2005-03-28 18:54:50 +00:00
Andreas Fuchs a02f0965d8 0.8.18.23:
Manual build fixes.

        * Allow the manual to be built with an sbcl in a non-standard
          place.  This is supposed to help the autobuilder/benchmarker
          build a manual without jumping through too many hoops.
        * Add a docstring to sb-md5's md5sum-string, to make the
          manual happy again.
2005-01-09 12:33:31 +00:00
Christophe Rhodes 257680b92e 0.8.18.21:
Merge Robert J. Macomber's octets3.lisp (sbcl-devel 2005-01-06)
	patch.
	... use WITH-ARRAY-DATA for bounds checking and simple-array
		extraction;
	... implement ASCII external format (and MALFORMED-ASCII
		condition);
	... don't need CODE-RANGE type, we can use CHAR-CODE;
	... make it compile in #!-SB-UNICODE;
	... one or two other frobs.  I don't think this is in its final
		form even now, but it's good enough, and...
	Implement SB-MD5:MD5SUM-STRING, calling STRING-TO-OCTETS
	... adjust md5-tests.lisp to use it;
	... tests now pass.  Hooray.
2005-01-09 00:11:14 +00:00
Christophe Rhodes dd357f3be2 0.8.3.72:
Merge modular_arithmetic_branch
	... include untested modular arithmetic implementation for hppa
	... unkludge sb-md5: now implemented using natural, high-level
		lisp.  (and as a bonus, compiles to shorter code on x86
		at least).
	... passes self-tests and pfdietz-tests on x86 at least.
		More exhaustive testing on other platforms is probably
		needed, maybe with the torturer
2003-09-16 12:07:39 +00:00
Alexey Dejneka 9874300803 0.8.2.26:
* Fix bug in the portable implementation of SB-MD5::I;
        * add support for modular functions with argument number
          different from 2;
        * SB!C::CUT-TO-WIDTH: derive node type from the type
          declaration;
        * on x86 reimplement LOGNOT as a modular function and
          implement 32BIT-LOGICAL-NOT in terms of LOGNOT;
        ... remove optimization of LOGNOT with LOGAND dest.
2003-08-13 09:40:24 +00:00
Christophe Rhodes 4f4a1695fa 0.8alpha.0.33:
Add one more contrib
	... SB-MD5, based on Pierre Mai's highly-frobbed implementation of
		RFC1321;
	... a couple of cosmetic changes to rotate-byte to accommodate the
		demands of code that wants to use it.
2003-05-16 14:42:35 +00:00