package spin
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=2d612f7a55a2cd71177e96c6a5a5d3a7c258b19b4eef9cf994a24b1ec77c3764
sha512=1b46b047c6f3d3ed38ba38912680e2af802517f30d27ae42ceca4fa1b3954d28ba6922535a322230a57e466f009df499823b39a325f476a9bf938fa2e0cd8f4a
CHANGES.md.html
0.8.0
Added
Added an
hello
command to generate a tutorial projectAdded a
parse_binaries
stanza that can betrue
to force Spin to parse binary filesAdded a
raw_files
stanza that takes a list of file or glob expressions to instruct Spin to copy files instead of parsing themAdded a new
c-bindings
template for C bindings usingctypes
Added a new
js
template for javascript applications withjs_of_ocaml
Changed
Removed the
gen
subcommand. The generators will come back with a much better workflowDropped support for Esy and Reason. The templates are now using the recommended OCaml setup only. The previous templates are hosted at https://github.com/ocaml-templates/
Changed the templates to use the
ISC
licenseIncrease version of
ocamlformat
to0.18.0
in templatesDo not install merlin when installing dev dependencies in templates
Drop support for BuckleScript in PPX
Drop support for publishing on NPM for CLI and PPX templates
Update CI scripts to
ocaml/setup-ocaml@v2
Remove python dependency to serve documentation in Makefile
Inline release script in Makefile
Remove global
-open StdLabels
in templatesThe
spa
template has been removed from the official templates and now lives at https://github.com/ocaml-templates/spin-incr-domSpin does not parse binary files by default anymore, they are simply copied to the destination folder
Use
test
stanza for unit tests now that Alcotest prints colors by defaultRemove unused flags defined in the root's
dune
file
Fixes
The project generation will now fail before the configurations prompt if the output directory is not empty
By default, Spin now creates a local switch for the generated projects. This can be changed with
spin config
, or by setting the env variableSPIN_CREATE_SWITCH=false
Fix an CLI incompatibility between
opam.2.0.X
andopam.2.1.X
that made Spin unusable with the former.
0.7.0
Added
Added a new
spa
template to generate Single-Page-Application with Js_of_ocamlDune's
--root
argument in templates' Makefiles to better compose generated projectsThe templates CI/CD is now caching Opam dependencies to improve build time
The templates are now installing locked dependencies by default during CI/CD
The Makefile of the templates include a small inlined python script to open the documentation with the default browser with the command
servedoc
Changed
Removed the
bs-react
template from the official templates. The template now lives in tmattio/spin-rescript.Removed dependency on Reason and use the generated project's Reason to convert
.ml
files to.re
.
Fixed
Fixed NPM release by vendoring a Chamomille-free version of Inquire
Remove wrong release flags from all templates
0.6.0 - 2020-05-17
This release is a complete rewrite of Spin.
Since the beginning of the project, a lot of learnings have been made and this new version incorporates these learning to build a solid foundation for the future of Spin.
Added
New template DSL
Template inheritance with the
(inherit ...)
stanzaDocumentation of the CLI and template DSL.
The CLI now provides a verbose flag to increase the verbosity
The git templates are now cached
Changed
Calling
spin
without a subcommand now displays a simpler usage documentation. Theman
page is available withspin --help
Better man page documentation
Better error messages
Improvements of the configuration prompts using Inquire
Update native templates to follow best practices (e.g. name of libraries)
The official templates are now embedded. No need to download a git repository, and the project generation works offline.
Fixed
Bucklescript templates now fallback to using
npm
whenyarn
is absent
0.5.1 - 2020-03-17
Added
Add versionning for the official templates to ensure updates on the templates don't break old version of Spin.
Sort
spin ls
result by name.
Templates
Rename react to bs-react. All the upcoming Bucklescript templates will be prefixed by bs-.
Add a lib template that is releasable on Opam.
Make the cli and ppx templates releasable on Opam.
Add support for Alcotest as an alternative to Rely in the native templates.
Add support for Opam as an alternative to Esy in the native templates.
Stop using Pesy and the dune files manually in each sub-directories.
Move the test_runner to a subdirectory support in test.
Extract the Contributing section of the README to a CONTRIBUTING.md file.
Add a CHANGES.md file that complies with dune-release requirements.
Use dune-release in the release scripts.
Remove homebrew Formula from the cli template that was a bad practice and didn’t allow users to update the generated projects.
Enable Windows in CI/CD of generated projects
0.5.0 - 2020-03-07
Added
Before generating a template, Spin will check if the user has all the dependencies installed and exit gracefully if not. (by @citizen428)
Add a
condition
field in thepostinstall
stanza for the templates.
Changed
Print a warning when the update of the official templates failed, but continue the execution.
Do not update the official templates when running new with a local path or a git repository.
Remove some runtime dependencies to reduce Spin's binary size.
Fixed
Trying to generate a file that already exists now raises an error instead of overwritting the file.
Fix to output a proper message when no generator exist for the current project.
Exit gracefully when failing to download a git repository or the initial templates for the first time. (by @citizen428)
0.4.8 - 2020-01-14
Added
Support user configuration file that stores general configuration such as the user's name, Github author_name, etc.
Provide a
config
subcommand that can be used to change the user configuration.The generators can now print a message when the generation succeeds with the
message
stanza.
0.4.7 - 2020-01-13
Added
post_install
stanza to run commands after installing a template now supports theworking_dir
stanza. The command will be executed in the given working directory.
Changed
Removed unused
starting_command
stanza.Removed unused
tutorial
stanza.
Fixed
Failure to parse a template file now prints an error with the file that cannot be parsed.
0.4.6 - 2020-01-11
Changed
Redirect stderr to dev null when calling git commands.
Fixed
Fix a wrong exit code when calling a generator that does not exist.
Rename Homebrew formula to prevent duplication with existing
spin
formula.Fix installation from NPM using
yarn
~~0.4.5 - 2020-01-11~~
This release has been unpublished.
~~0.4.4 - 2020-01-11~~
This release has been unpublished.
~~0.4.3 - 2020-01-11~~
This release has been unpublished.
0.4.2 - 2020-01-06
Fixed
Fix release artifacts on linux that was using darwin binaries.
0.4.1 - 2020-01-04
Changed
Use master branch of
spin-templates
.The template argument in
spin new
is not required. To use the minimal template, you can runspin new native
.
Fixed
Use HTTPS instead of SSH to clone
spin-templates
.Remove duplicated git clone logs.
0.4.0 - 2020-01-02
Added
Create new projects from official templates with
spin new TEMPLATE
.Create new projects from git repositories with
spin new TEMPLATE
.Create new minimal projects with
spin new
when no argument is provided.Generate new modules in existing Spin projects with
spin gen [GENERATOR]
.List existing official templates with
spin ls
.Install with Homebrew.
Install with a bash script.