Merge pull request 'templates: built with Nix' (#8) from top-level-wip into master

Reviewed-on: #8
std^2
pegasust 2023-01-20 18:46:47 +00:00
commit 2796a3720e
4 changed files with 57 additions and 2 deletions

View File

@ -607,7 +607,7 @@ local capabilities = require('cmp_nvim_lsp').default_capabilities()
-- default language servers -- default language servers
local servers = { local servers = {
'clangd', 'rust_analyzer', 'pyright', 'tsserver', 'sumneko_lua', 'cmake', 'tailwindcss', 'prismals', 'clangd', 'rust_analyzer', 'pyright', 'tsserver', 'sumneko_lua', 'cmake', 'tailwindcss', 'prismals',
'rnix', 'eslint', 'terraformls', 'tflint', 'svelte', 'astro', 'clojure_lsp', "bashls", 'yamlls', 'rnix', 'eslint', 'terraformls', 'tflint', 'svelte', 'astro', 'clojure_lsp', "bashls", 'yamlls', "ansiblels",
"jsonls", "denols" "jsonls", "denols"
} }
require("mason").setup({ require("mason").setup({

View File

@ -55,6 +55,9 @@ let
pkgs.nodePackages.pyright pkgs.nodePackages.pyright
pkgs.python3Packages.pylint pkgs.python3Packages.pylint
pkgs.python3Packages.flake8 pkgs.python3Packages.flake8
# pkgs.ansible-lint
pkgs.python38Packages.ansible
pkgs.ansible-language-server
# TODO: the devShell should provide rust-analyzer so that # TODO: the devShell should provide rust-analyzer so that
# cargo test builds binaries compatible with rust-analyzer # cargo test builds binaries compatible with rust-analyzer

View File

@ -0,0 +1,52 @@
# A Python project that uses Poetry for packaging and package management
[![built with nix](https://builtwithnix.org/badge.svg)](https://builtwithnix.org)
- Bootstrapped with [pegasust/dotfiles](https://git.pegasust.com/pegasust/dotfiles)
- Provides [devShell (`nix develop`)](https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-develop.html),
[shell.nix (`nix-shell -p ./`)](https://nixos.org/manual/nix/stable/command-ref/nix-shell.html)
- Install [nix-direnv](https://github.com/nix-community/nix-direnv) here for automatic
dev-shell integration
## Bootstrapping the project
- This repo uses [poetry](https://python-poetry.org/docs/cli/#init), a repo-manager
with an intuitive CLI
```sh
poetry init
```
### Libraries worth integrating
- [tophat/syrupy](https://github.com/tophat/syrupy) Snapshot testing plugin for (builtin) pytest
```sh
poetry add --group dev syrupy
```
- [HypothesisWorks/hypothesis](https://github.com/HypothesisWorks/hypothesis)
Hypothesis testing (generate testing data) framework - data driven testing.
```sh
poetry add --group dev hypothesis
```
- [requests](https://github.com/psf/requests) An intuitive way to perform network requests in Python
```sh
poetry add requests
```
- [plotly](https://github.com/plotly/plotly.py) Create plots.
```sh
poetry add plotly
```
- [toolz](https://github.com/pytoolz/toolz) Functional programming in Python
- Beware, you might lose typesafety doing this, but this is what the
[REPL](https://github.com/Olical/conjure/wiki/Quick-start:-Python-(stdio))
is invented to mitigate.

View File

@ -35,7 +35,7 @@ for logging needs
### Library development ### Library development
- [proptest](https://lib.rs/crates/proptest) for hyppothesis testing - [proptest](https://lib.rs/crates/proptest) for hypothesis testing
- Data-driven testing starts with proptest - Data-driven testing starts with proptest