amethyst / amethyst/specs

Specs 1.0 roadmap

Open
#532 6 comments 15 reactions 0 assignees View on GitHub
help wanted information
Dominant language
Rust
Stars
2.6k
Forks
215
PR merge metrics
No merged PRs in 30d

Description

This is the tracking issue for the 1.0 release.

## Alpha phase

**Goal:** Get the API to a level that's supposedly stable and robust.

### Steps

* [ ] Check error handling for consistency
* [x] Make `World` an extension of `Resources` (#523) (worked on by @TimonPost)
* [ ] Evaluate `System::setup` (see #525, #437) (worked on by @LucioFranco)
* [x] How much should we keep? (everything ~~/ `Default` only / no automatic setup~~)
* [ ] Work out good practices
* [ ] Look into initialization story in general
* [ ] `RestrictedStorage` (worked on by @distransient)
* [x] Is it actually useful? How applicable?
* [ ] With which APIs does it intersect?
* [ ] Can its uage be improved?
* [x] Remove `common` module
* [ ] Remove experimental modules / move them out
* [ ] Allow joining over `FlaggedStorage` in parallel (worked on by @Moxinilian)
* [x] Audit uses of `unsafe` (https://github.com/slide-rs/specs/issues/548)
* [ ] Close, fix or postpone all existing issues
* [x] Try to cut down on dependencies where appropriate; document public dependencies and stabilize them before the alpha release
* [x] Migrate to Rust 2018

### Reflection

* [ ] Summarize all changes
* [ ] Release alpha version & create post

## Beta phase

**Goal:** Fix last inconsistencies / problems reported, improve docs quality, increase test coverage and create bigger demo.

### Fixes

* [ ] Plan eight weeks starting with the post for collecting problem reports.
* [ ] Fix bugs, fix problems / close issues which are out of scope; document what is in scope and what isn't.

### Documentation

* [ ] Improve top-level documentation; include only reference-style information and keep all explanations in the book; link to the book when appropriate.
* [ ] Ensure the following items are part of every item (where applicable)
* [ ] `# Errors` section
* [ ] `# Panics` section
* [ ] `# Examples` section

### Tests

* [ ] Set up codecov.io to measure code coverage
* [ ] Try to cover uncovered lines where appropriate
* [ ] Add larger simulation test

### Demo

* [ ] Create bigger demo with good documentation serving _the_ example, showing best practices, common patterns and general usage
* [ ] Make README example more useful / point to demo

### End of beta phase

* [ ] Release beta version and make another post
* [ ] Help a couple of projects upgrading

## 1.0

* [ ] If nothing goes horribly wrong, release `1.0` and make an announcement.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.