Skip to content

1.0 Release

Latest
Compare
Choose a tag to compare
@jacobe90 jacobe90 released this 11 May 00:20

Binary Distribution Installation

Mac OS

Assumptions

  • Access to a bash or zsh terminal

Step 1: Download database and binary distribution

  • Download macos-release.zip
  • Assuming google chrome is being used, the browser will flag macos-release as suspicious. Select the release in your downloads tab, using the button in the upper right hand corner of chrome, and press "Download suspicious file"
  • Unzip macos-release.zip, creating the folder temp
  • Download and unzip server-docker.zip, creating the server-docker folder

Step 2: Database setup

  • Download docker desktop at this web page: https://www.docker.com/products/docker-desktop/
  • In a bash or zsh terminal, navigate inside of your server-docker folder using the command cd [insert path of server-docker here]
  • Inside that folder, run the command docker-compose up - this will make the database ready to receive connections!

Step 3: Run the Server and Client

  • Next, in Finder, navigate into the folder temp/release/server and double click on the server binary file (which has a terminal icon next to it). This will create a server settings config at ~/.abn_settings/Settings.toml, open` a terminal, and run the server. You may get denied access the first time, if this happens, just double-click again, and run the server.
  • Finally, in Finder, navigate into the folder temp/release/client and double click on the client binary file. This will open a terminal, and run the client!

Source Distribution Installation

Build Instructions

Step 1: Download Source Code, Rust, and Docker

Step 2: Run Database, Client, and Server

  • Open three terminals, and navigate to a-better-notion-1.0 in each using the cd command
  • Make sure you don't have any databases running in docker. In the first terminal, build and run the database with docker-compose up
  • In the second, run the server with cargo run -p server
  • In the third, run the client with cargo run -p client

Running Tests

  • Open a terminal. Run all tests with cargo test. Run tests for frontend only with cargo test -p client. Run tests for lib only with cargo test -p common. Run tests for server only with cargo test -p server
  • Run all tests and view code coverage with zsh show-lcov.sh

Release Notes

What's changed:

Features

  • Fully debugged task CRUD
  • Filters & views API implemented on Backend
  • Stop all client-side CRUD if server goes down
  • Improved automated server settings workflow

Contribution Guidelines

Tips for Development

  • Source code repository can be found here. View file changes by clicking on the Commits icon in the upper right hand corner of the file view.
  • Use zsh show-lcov.sh when writing tests to meet code coverage
  • Use zsh pr-checks.sh to ensure code will pass automated tests for a pull request, before making the pull request
  • Use cargo clippy to run clippy, which we use to ensure all code is properly formatted
  • When switching to branches with database changes or making changes to database creation, make sure to delete the database and rerun docker-compose up in the project root

Documentation

  • See the ABN wiki for user documentation.
  • To read the API documentation of a crate, run cargo rustdoc -p <crate_name> --open in the project root. Currently we have 3 crates: client, common, and server.