diff --git a/.github/workflows/binary.yaml b/.github/workflows/binary.yaml index 241220b..79f967d 100644 --- a/.github/workflows/binary.yaml +++ b/.github/workflows/binary.yaml @@ -43,13 +43,13 @@ jobs: include: - os: macos-15-intel name: x86_64-apple-darwin - installable: .#dune-experimental + installable: .#dune - os: macos-14 name: aarch64-apple-darwin - installable: .#dune-experimental + installable: .#dune - os: ubuntu-22.04 name: x86_64-unknown-linux-musl - installable: .#dune-static-experimental + installable: .#dune-static # If the latest commit is the same as latest run, don't re-run. if: ${{ needs.check_build.outputs.action == 'BUILD' || github.event_name == 'workflow_dispatch' }} @@ -85,7 +85,7 @@ jobs: - name: Export version run: | - echo "(version \"Dune Developer Preview: build $(date -u +"%Y-%m-%dT%H:%M:%SZ"), git revision $(git rev-parse HEAD)\")" >> dune-project + echo "(version \"Nightly build $(date -u +"%Y-%m-%dT%H:%M:%SZ"), git revision $(git rev-parse HEAD)\")" >> dune-project - run: nix build ${{ matrix.installable }} diff --git a/README.md b/README.md index 9e5a98b..5d0a141 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Dune binaries distribution -This is a webpage for `dune` binaries distribution of `Dune developer Preview`. +This is the web site for for the nightly binary distribution of `dune`. The page is automatically generated from file `metadata.json`. Apart from the _YAML_ part, the code is written in _OCaml_. @@ -10,7 +10,7 @@ it: - generates new artifacts and pushes them to their SSH storage using `RClone` - publishes the Dockerfile used to deploy the website -The web page is deployed on [preview.dune.build](https://preview.dune.build). +The web page is deployed on [nightly.dune.build](https://nightly.dune.build). > :hourglass: The pipeline is triggered every day at _01:00 UTC_. @@ -101,7 +101,7 @@ page to ensure the page is reloaded when you restart the server. ### Deploying on staging environment If you need to test your work, you can push on the staging environment. This -environment is available at https://staging-preview.dune.build. If you just need +environment is available at https://staging-nightly.dune.build. If you just need to test the website view, you need to reset the HEAD of the `staging` branch and push force on it: ```sh diff --git a/lib/container.mlx b/lib/container.mlx index cefb818..ee5315f 100644 --- a/lib/container.mlx +++ b/lib/container.mlx @@ -82,7 +82,7 @@ let page ~title content = diff --git a/lib/main.mlx b/lib/main.mlx index 027a4eb..1a549a0 100644 --- a/lib/main.mlx +++ b/lib/main.mlx @@ -18,8 +18,8 @@ let header_info () = "Under a Minute"

- "The Dune Developer Preview is an ongoing program that provides early access to new and experimental features in Dune and the broader OCaml Platform with an " - "experimental nightly release" + "The Dune nightly is a binary of the Dune development branch with a " + "nightly release"

@@ -29,9 +29,9 @@ let warning () =
- "This Dune Install is only an " + "This Dune installation is an " - "EXPERIMENTAL NIGHTLY RELEASE" + "UNSTABLE NIGHTLY RELEASE" " of Dune"
@@ -54,18 +54,15 @@ let getting_started ~install_url () = "Run" -"$ PROJECT=hello_world" -"$ dune init proj \"$PROJECT\"" -"$ cd \"$PROJECT\"" -"$ dune pkg lock" -"$ dune exec \"$PROJECT\"" +{|$ PROJECT=hello_world|} +{|$ dune init proj "$PROJECT"|} +{|$ cd "$PROJECT"|} +{|# To opt in to using dune for package management |} +{|$ echo "(dune-lang 3.21)\n(pkg enabled)" > dune-workspace|} +{|$ dune exec "$PROJECT"|}

"Editor Configuration"

-

- "Here is how to configure some popular editors for OCaml using the Dune Developer Preview. Note that it is unnecessary to install " - "ocaml-lsp-server" - " as Dune will install it automatically." -

+

"Here is how to configure some popular editors for OCaml using the Dune nightly."

@@ -74,7 +71,7 @@ let getting_started ~install_url () = "vscode-ocaml-platform" " plugin for Visual Studio Code. By default it assumes that you'll be using Opam to install " "ocamllsp" - ". To configure it to work with the Dune Developer Preview, add the following to your settings.json file:" + ". To configure it to work with the Dune nightly, add the following to your settings.json file:"

"// settings.json" @@ -92,7 +89,7 @@ let getting_started ~install_url () =

"The easiest way to configure Neovim for OCaml is by installing the " "lspconfig" - " package. The default configuration will work with the Dune Developer Preview, so just enable it with:" + " package. The default configuration will work with the Dune nightly, so just enable it with:"

"-- init.lua" @@ -103,7 +100,7 @@ let getting_started ~install_url () =

- "Emacs users will need to add the Dune Developer Preview's bin directory to their " + "Emacs users will need to add the Dune nightly's bin directory to their " "exec-path" " and " "PATH" @@ -113,7 +110,7 @@ let getting_started ~install_url () =

"; init.el" -"; add the dune developer preview bin path to exec-path and PATH" +"; add the dune nightly bin path to exec-path and PATH" "(add-to-list 'exec-path \"~/.local/bin\" t)" "(setenv \"PATH\" (concat (expand-file-name \"~/.local/bin\") \":\" (getenv \"PATH\")))" " " @@ -159,15 +156,8 @@ let feedback () = "Share Feedback" -

"We are excited to learn from your experience with the Dune Developer Preview, so feel encourage to tell us what you think"

+

"We are excited to learn from your experience with the Dune nightly, so feel encourage to tell us what you think"

- -

- - "Submit Feedback" -

-
-

@@ -179,38 +169,37 @@ let feedback () = let q_and_a = [ - "What is the Dune Developer Preview?", + "What is the Dune nightly?",

-

"The Dune Developer Preview is an ongoing program that provides early access to new and experimental features in Dune and the broader OCaml Platform. It's not limited to a single feature or time period – instead, it's a continuous initiative to involve the community in testing and refining upcoming developments."

-

"While it currently showcases Dune's new package management capabilities, the Developer Preview will continue to introduce and iterate on various features even after the package management system is fully integrated into stable releases."

-

"By participating in the Developer Preview, you'll have the opportunity to try out cutting-edge functionality, provide valuable feedback, and help shape the future of Dune and the OCaml ecosystem. We encourage users to think of the Developer Preview as a persistent \"beta channel\" for Dune and related tools, always offering a glimpse into what's coming next."

+

"The Dune nightly provides early access to the latest development of Dune without having to wait for a stable release. It's a continuous initiative to involve the community in testing and refining upcoming developments."

- ; "Is it stable?", (

"No. For a stable release of OCaml, please follow the installation guide on ""OCaml.org"". The Developer Preview is an unstable distribution of Dune and, by nature, will always be unstable. However, its features will stabilise over time and move to a stable release of Dune. If you use the Developer Preview, expect bugs and please report them to ""ocaml/dune""."

) - ; "Does it support Windows?",

"No, not yet. Watch this space for news!"

- ; "Can I build the Developer Preview of Dune from sources?", + ; "Is it stable?", +

+ "No. The Developer nightly is built from unreleased code on the head of the development branch. If you use the nightly, expect bugs and please report them to " + "ocaml/dune" + ". For a stable release of OCaml, please follow the installation guide on " + "OCaml.org" + ". Binary installations of stable release are available at" + "Dune Binary Installer""." +

+ ; "Can I install the binary on Windows?",

"No, not yet. Watch this space for news!"

+ ; "Can I build the nightly of Dune from sources?",
-

"Yes. The only difference from a regular build from source is in a few - configuration flags. Please look in the Dune repository for complete instructions - on how to do a source build of Dune." +

"Yes. The nightly is just a binary distribution of the latest Dune features."

+

+ "Check out " + "the installation instructions in the Dune repository" + " on how to do a source build of Dune."

-

"When configuring the build you'll want to enable the following flags:"

- -"--pkg-build-progress enable" -"--lock-dev-tool enable" -"--portable-lock-dir enable" -
; "Can I access these features from a version of Dune managed by opam?",
-

"Yes, but we can't guarantee they will work correctly since the Dune Developer Preview makes some assumptions for package management that aren't supported by opam." +

"Yes, but we can't guarantee that every feature of the nightly will make it as-is into future releases."

-

"To enable these features make sure you are pinning dune to the development version, and export the following environment variables: " +

"To enable these features make sure you are pinning Dune to the development version: "

-"$ opam pin add dune --dev" -"$ export DUNE_CONFIG__PKG_BUILD_PROGRESS=enabled" -"$ export DUNE_CONFIG__LOCK_DEV_TOOL=enabled" -"$ export DUNE_CONFIG__PORTABLE_LOCK_DIRS=enabled" +[JSX.string "$ opam pin add dune --dev-repo"]
] @@ -250,11 +239,11 @@ let manual_installation ~base_url ~releases () =

"Manual Installation"

- "In this section you’ll find instructions to manually install the Dune Developer Review, and verify the installation. This is recommended for advanced users, or if you want s understand where the binaries come from." + "In this section you’ll find instructions to manually install the Dune nightly, and verify the installation. This is recommended for advanced users, or if you want to understand where the binaries come from."

"Featured Downloads"

- "This is the latest release of the Dune Developer Preview. See the " + "This is the latest release of the Dune nightly. See the " "release history" " section for all past releases."

@@ -265,7 +254,7 @@ let manual_installation ~base_url ~releases () = |> JSX.list) -

"Installing the Binary"

+

"Installing the binary"

"After downloading a binary release of Dune, make it executable and place it somewhere reachable by your PATH:"

@@ -323,7 +312,7 @@ let release_history ~base_url ~releases () =

"Here is a list of the " (JSX.int (List.length releases)) - " latest releases of the Dune Developer Preview." + " latest builds of the Dune nightly."

( diff --git a/static/install b/static/install index 19faf80..f145bef 100755 --- a/static/install +++ b/static/install @@ -78,7 +78,7 @@ esac tar_target_name="dune-$target" tar_target="$tar_target_name.tar.gz" -dune_tar_uri="https://preview.dune.build/latest/$target" +dune_tar_uri="https://nightly.dune.build/latest/$target" install_dir="$HOME/.local" bin_dir="${install_dir}/bin"