redirects = [ # Netlify {from = "https://spacy.netlify.com/*", to="https://spacy.io/:splat", force = true }, # Subdomain for branches {from = "https://nightly.spacy.io/*", to="https://nightly-spacy-io.spacy.io/:splat", force = true, status = 200}, # Old subdomains {from = "https://survey.spacy.io/*", to = "https://spacy.io", force = true}, {from = "http://survey.spacy.io/*", to = "https://spacy.io", force = true}, {from = "https://alpha.spacy.io/*", to = "https://spacy.io", force = true}, {from = "http://alpha.spacy.io/*", to = "https://spacy.io", force = true}, # Old demos {from = "/demos/*", to = "https://explosion.ai/demos/:splat", force = true}, # Old blog {from = "/blog/*", to = "https://explosion.ai/blog/:splat", force = true}, {from = "/feed", to = "https://explosion.ai/feed", force = true}, {from = "/feed.xml", to = "https://explosion.ai/feed", force = true}, # Old documentation pages (1.x) {from = "/docs/usage/processing-text", to = "/usage/linguistic-features", force = true}, {from = "/docs/usage/deep-learning", to = "/usage/training", force = true}, {from = "/docs/usage/pos-tagging", to = "/usage/linguistic-features#pos-tagging", force = true}, {from = "/docs/usage/dependency-parse", to = "/usage/linguistic-features#dependency-parse", force = true}, {from = "/docs/usage/entity-recognition", to = "/usage/linguistic-features#named-entities", force = true}, {from = "/docs/usage/word-vectors-similarities", to = "/usage/vectors-similarity", force = true}, {from = "/docs/usage/customizing-tokenizer", to = "/usage/linguistic-features#tokenization", force = true}, {from = "/docs/usage/language-processing-pipeline", to = "/usage/processing-pipelines", force = true}, {from = "/docs/usage/customizing-pipeline", to = "/usage/processing-pipelines", force = true}, {from = "/docs/usage/training-ner", to = "/usage/training#ner", force = true}, {from = "/docs/usage/tutorials", to = "/usage/examples", force = true}, {from = "/docs/usage/data-model", to = "/api", force = true}, {from = "/docs/usage/cli", to = "/api/cli", force = true}, {from = "/docs/usage/lightning-tour", to = "/usage/spacy-101#lightning-tour", force = true}, {from = "/docs/api/language-models", to = "/usage/models#languages", force = true}, {from = "/docs/api/spacy", to = "/docs/api/top-level", force = true}, {from = "/docs/api/displacy", to = "/api/top-level#displacy", force = true}, {from = "/docs/api/util", to = "/api/top-level#util", force = true}, {from = "/docs/api/features", to = "/models/#architecture", force = true}, {from = "/docs/api/philosophy", to = "/usage/spacy-101", force = true}, {from = "/docs/usage/showcase", to = "/universe", force = true}, {from = "/tutorials/load-new-word-vectors", to = "/usage/vectors-similarity#custom", force = true}, {from = "/tutorials", to = "/usage/examples", force = true}, # Old documentation pages (v2.x) {from = "/usage/adding-languages", to = "/usage/linguistic-features", force = true}, # Rewrite all other docs pages to / {from = "/docs/*", to = "/:splat"}, # Updated documentation pages {from = "/usage/resources", to = "/universe", force = true}, {from = "/usage/lightning-tour", to = "/usage/spacy-101#lightning-tour", force = true}, {from = "/usage/linguistic-features#rule-based-matching", to = "/usage/rule-based-matching", force = true}, {from = "/models/comparison", to = "/models", force = true}, {from = "/api/#section-cython", to = "/api/cython", force = true}, {from = "/api/#cython", to = "/api/cython", force = true}, {from = "/api/sentencesegmenter", to="/api/sentencizer"}, {from = "/universe", to = "/universe/project/:id", query = {id = ":id"}, force = true}, {from = "/universe", to = "/universe/category/:category", query = {category = ":category"}, force = true}, # Renamed universe projects {from = "/universe/project/spacy-pytorch-transformers", to = "/universe/project/spacy-transformers", force = true} ]