diff --git a/Makefile b/Makefile index 3318cf280ce..6dcbc802977 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ CFLAGS_FOR_BUILD = # This branch name must be changed each time the pb boot files are # updated: -PB_BRANCH = v10.4.0-pre-release.1-1 +PB_BRANCH = v9.1 PB_REPO = https://github.com/racket/pb # Set to empty for Git before v1.7.10: @@ -145,7 +145,7 @@ PLT_SETUP_OPTIONS = # Catalog for package sources, but packages within this # repo take precedence: -SRC_CATALOG = https://pkgs.racket-lang.org +SRC_CATALOG = "https://download.racket-lang.org/releases/9.1/catalog/" # Built-in catalog for package sources (not meant to be configured): DEFAULT_SRC_CATALOG = https://pkgs.racket-lang.org diff --git a/pkgs/base/info.rkt b/pkgs/base/info.rkt index e8f7a846c42..88062519c9a 100644 --- a/pkgs/base/info.rkt +++ b/pkgs/base/info.rkt @@ -14,7 +14,7 @@ ;; In the Racket source repo, this version should change exactly when ;; "racket_version.h" changes: -(define version "9.0.0.11") +(define version "9.1") (define deps `("racket-lib" ["racket" #:version ,version])) diff --git a/pkgs/racket-index/scribblings/main/private/manuals.rkt b/pkgs/racket-index/scribblings/main/private/manuals.rkt index bbdf524808d..ced659af807 100644 --- a/pkgs/racket-index/scribblings/main/private/manuals.rkt +++ b/pkgs/racket-index/scribblings/main/private/manuals.rkt @@ -8,6 +8,7 @@ setup/dirs scheme/list scheme/match + setup/private/validate-scribblings "../config.rkt") (provide make-start-page) @@ -63,14 +64,17 @@ (define dir (directory-record-path rec)) (define s (and i (i tag))) - (if (not s) + (if (or (not s) + (not (validate-scribblings-infos s))) null (filter-map (lambda (d) - (if (and (not all?) - (pair? (cdr d)) - (or (memq 'user-doc (cadr d)) - (memq 'user-doc-root (cadr d)))) + (if (or (and (not all?) + (pair? d) + (pair? (cdr d)) + (or (memq 'user-doc (cadr d)) + (memq 'user-doc-root (cadr d)))) + (not (list? d))) #f (let* ([new-cat (or (and ((length d) . > . 2) (let ([cat (caddr d)]) diff --git a/pkgs/racket-index/setup/private/validate-scribblings.rkt b/pkgs/racket-index/setup/private/validate-scribblings.rkt new file mode 100644 index 00000000000..5cb5237be0f --- /dev/null +++ b/pkgs/racket-index/setup/private/validate-scribblings.rkt @@ -0,0 +1,39 @@ +#lang racket/base +(require setup/collection-name) + +(provide validate-scribblings-infos) + +(define (scribblings-flag? sym) + (memq sym '(main-doc main-doc-root user-doc-root user-doc multi-page + depends-all depends-all-main depends-all-user depends-family + no-depend-on always-run keep-style no-search + every-main-layer))) + +(define (validate-scribblings-infos infos) + (define (validate path [flags '()] [cat '(library)] [name #f] [out-count 1] [order-hint 0]) + (and (string? path) (relative-path? path) + (list? flags) (andmap scribblings-flag? flags) + (or (not name) (collection-name-element? name)) + (and (list? cat) + (<= 1 (length cat) 3) + (or (symbol? (car cat)) + (string? (car cat))) + (or (null? (cdr cat)) + (and (real? (cadr cat)) + (or (null? (cddr cat)) + (let ([fam (caddr cat)]) + (and (list? fam) + (andmap string? fam))))))) + (and (exact-positive-integer? out-count)) + (and (real? order-hint)) + (list path flags cat + (or name (let-values ([(_1 name _2) (split-path path)]) + (path-replace-suffix name #""))) + out-count + order-hint))) + (and (list? infos) + (let ([infos (map (lambda (i) + (and (list? i) (<= 1 (length i) 6) + (apply validate i))) + infos)]) + (and (not (memq #f infos)) infos)))) diff --git a/pkgs/racket-index/setup/scribble.rkt b/pkgs/racket-index/setup/scribble.rkt index 8a6c4ea1ef8..a3359000381 100644 --- a/pkgs/racket-index/setup/scribble.rkt +++ b/pkgs/racket-index/setup/scribble.rkt @@ -4,8 +4,8 @@ setup/dirs setup/path-to-relative "private/doc-path.rkt" + "private/validate-scribblings.rkt" setup/collects - setup/collection-name setup/main-doc setup/parallel-do setup/doc-db @@ -161,39 +161,6 @@ (error 'setup "install SQLite to build documentation")) (when latex-dest (log-setup-info "latex working directory: ~a" latex-dest)) - (define (scribblings-flag? sym) - (memq sym '(main-doc main-doc-root user-doc-root user-doc multi-page - depends-all depends-all-main depends-all-user depends-family - no-depend-on always-run keep-style no-search - every-main-layer))) - (define (validate-scribblings-infos infos) - (define (validate path [flags '()] [cat '(library)] [name #f] [out-count 1] [order-hint 0]) - (and (string? path) (relative-path? path) - (list? flags) (andmap scribblings-flag? flags) - (or (not name) (collection-name-element? name)) - (and (list? cat) - (<= 1 (length cat) 3) - (or (symbol? (car cat)) - (string? (car cat))) - (or (null? (cdr cat)) - (and (real? (cadr cat)) - (or (null? (cddr cat)) - (let ([fam (caddr cat)]) - (and (list? fam) - (andmap string? fam))))))) - (and (exact-positive-integer? out-count)) - (and (real? order-hint)) - (list path flags cat - (or name (let-values ([(_1 name _2) (split-path path)]) - (path-replace-suffix name #""))) - out-count - order-hint))) - (and (list? infos) - (let ([infos (map (lambda (i) - (and (list? i) (<= 1 (length i) 6) - (apply validate i))) - infos)]) - (and (not (memq #f infos)) infos)))) (define (get-docs main-dirs) (define doc-dir (find-doc-dir)) (lambda (i rec) diff --git a/racket/collects/racket/HISTORY.txt b/racket/collects/racket/HISTORY.txt index 3132170c9fc..739ddbc3526 100644 --- a/racket/collects/racket/HISTORY.txt +++ b/racket/collects/racket/HISTORY.txt @@ -1,3 +1,16 @@ +Version 9.1, January 2026 +Added support for configuring a language family to navigate + documentation +Add `exn-classify-errno` +BC: Change all characters to be interned, so `interned-char?` + implies `char?` and `eqv?` implies `eq?` on characters +Change `make-struct-type` to accept `'current` for inspector +Add `#:on-length-mismatch` to `for` and variants +Add `--enable-sofind=` configuration mode to generalize + `--enable-[no]natipkg` +Add `'platform` and `'so-find` modes to `system` +Add `openssl/legacy` + Version 9.0, October 2025 Add support for recording a thread's results via the `#:keep` option to `thread`; results are returned by `thread-wait` diff --git a/racket/collects/syntax/unsafe/for-transform.rkt b/racket/collects/syntax/unsafe/for-transform.rkt index 9429de390f4..ab445f829e2 100644 --- a/racket/collects/syntax/unsafe/for-transform.rkt +++ b/racket/collects/syntax/unsafe/for-transform.rkt @@ -11,7 +11,7 @@ expand-for-clause*) (define (expand-for-clause orig-stx clause) - (define new-stx (orig:expand-for-clause orig-stx clause)) + (define new-stx (orig:expand-for-clause orig-stx clause (lambda () #t))) (syntax-case new-stx () [(outer-bind outer-check @@ -42,4 +42,4 @@ #'inner-check))])) (define (expand-for-clause* orig-stx clause) - (orig:expand-for-clause orig-stx clause)) + (orig:expand-for-clause orig-stx clause (lambda () #t))) diff --git a/racket/src/version/racket_version.h b/racket/src/version/racket_version.h index 96ac7485e37..0de5ea7104a 100644 --- a/racket/src/version/racket_version.h +++ b/racket/src/version/racket_version.h @@ -14,9 +14,9 @@ */ #define MZSCHEME_VERSION_X 9 -#define MZSCHEME_VERSION_Y 0 +#define MZSCHEME_VERSION_Y 1 #define MZSCHEME_VERSION_Z 0 -#define MZSCHEME_VERSION_W 11 +#define MZSCHEME_VERSION_W 0 /* A level of indirection makes `#` work as needed: */ #define AS_a_STR_HELPER(x) #x