Releases: kubernetes-retired/kube-aws
v0.9.10-rc.2
Changelog since v0.9.10-rc.1
Improvements
- #1234: handle kubectl apply failures by trying delete+create(Thanks to @davidmccormick)
Bug fixes
- #1235: Bug/flannel cni binary install(Thanks to @davidmccormick)
v0.9.10-rc.1: Self-hosting flannel, Kiam, GPU via device plugin, various reliability fix
CAUTION: As the version number indicates, this is for testing-purpose! Please help us stabilize this release by reporting any issue you encounter
TODOs towards v0.9.10 final
- Upgrade components to the latest stable version of Kubernetes v1.9.x, Etcd v3.2.x, Calico 2.x
- Testing with various configuration switches (Especially with or without self-hosting flannel, new-way of GPU support)
Changelog since v0.9.9
Please see our roadmap for details on upcoming releases.
Component versions
Kubernetes: v
Etcd: v
Calico: v
Helm/Tiller: v
Actions required
Features
- #1066: Added Priority to the admissioncontrol list(Thanks to @zonzamas)
- #1074: Add [experimental] option for using IPVS proxy mode(Thanks to @ivanilves)
- #1086: controlplane config: Rotate Certificates on workers kubelet(Thanks to @zonzamas)
- #1090: Set V4 signatures to enable kube-resources-autosave to work in all regions(Thanks to @whereisaaron)
- #1092: Allow exposing several ports so that external Prometheus can scrape K8S system components' metrics(Thanks to @zach-dunton-sf)
- #1098: Add missing admission controllers(Thanks to @danielfm)
- #1108: Add RotateKubeletClientCertificate feature gate automatically when rotating certificates(Thanks to @zonzamas)
- #1113: Add support for CloudFormation service role
- #1114: Migrate to golang/dep
- #1116: conditionally deploy kube-dns to controllers(Thanks to @zonzamas)
- #1117: Add priorityClassName to cloud-config-controller(Thanks to @sergi)
- #1123: Add [optional] explicit IAM role specification to NodeDrainer(Thanks to @ivanilves)
- #1127: Swap out wget for curl in node drainer scripts(Thanks to @c-knowles)
- #1129: Template kube-dns-autoscaler parameters(Thanks to @SomeoneWeird)
- #1134: feat(integration): kiam support
- #1141: Add Mutating/ValidatingAdmissionWebhook to Admission Control List(Thanks to @shraykay)
- #1164: Apply Kiam TLS Secrets to kube-system(Thanks to @kevtaylor)
- #1167: Change bash to sh in autosave(Thanks to @kevtaylor)
- #1172: added autoscaling:DescribeAutoScalingGroups to stack-template(Thanks to @luck02)
- #1177: Integrate s3-uri flag into cluster.yml(Thanks to @jorge07)
- #1178: Ask for confirmation in destroy command(Thanks to @jorge07)
- #1179: Correct insignificant error message typo(Thanks to @whereisaaron)
- #1181: Enable DescribeLaunchConfigurations(Thanks to @luck02)
- #1184: Add IAM roles for resources auto saver(Thanks to @kevtaylor)
- #1189: closes #1186 - commit generated templates so project can be imported(Thanks to @pete911)
- #1195: Add networking-daemonsets feature(Thanks to @davidmccormick)
- #1197: do not use metric server when metricsServers addon is disabled(Thanks to @Fsero)
- #1201: Make CoreOS AMI ID mandatory in cluster YAML(Thanks to @jorge07)
- #1202: Dedicated Service account / Cluster Role for Tiller Deploy(Thanks to @kylehodgetts)
- #1205: core: add OwnerReferencesADM(Thanks to @luck02)
- #1222: Add GPU support for kubernetes 1.9+ using device plugins(Thanks to @Lemmons)
- #1224: closes #1223 added generated templates back to .gitignore(Thanks to @pete911)
- #1227: Enable user provided service-account-signing-keys(Thanks to @davidmccormick)
- #1228: Another implementation of user-data fingerprinting(Thanks to @davidmccormick)
Improvements
- #1103: Update various components(Thanks to @camilb)
- #1104: Bump Kubernetes version to 1.9.1. Use Google's hyperkube image.(Thanks to @camilb)
- #1107: Warn that 'kube-aws update' can replace all if 'amiId' is blank(Thanks to @whereisaaron)
Bug fixes
- #1095: fix restore.sh(Thanks to @skloss)
- #1101: Fix kubelet.service startup.(Thanks to @camilb)
- #1131: Fix Key name for kubernetesDashboardImage(Thanks to @bgeesaman)
- #1171: Fix validation failure on gp2 volume type for node pools(Thanks to @luck02)
- #1225: Fix synchronization on starting etcdadm-reconfigure(Thanks to @ktateish)
- #1229: Fix issue with tiller having to restrictive permissions(Thanks to @kylehodgetts)
Documentation
- #1097: Update documentation that hostPort issue fixed since Kubernetes 1.7.0(Thanks to @whereisaaron)
- #1118: Tidy up markdown(Thanks to @whereisaaron)
- #1155: Prompt for passphrase when dealing with encrypted ca key(Thanks to @tomas-edwardsson)
- #1198: Doc: notice about service token invalidation after credentials update.(Thanks to @hartym)
- #1216: Fix documentation of s3-uri(Thanks to @c-knowles)
v0.9.9: Kubernetes 1.8, RBAC enabled by default, API endpoint backed by NLB, Encrypted S3 buckets, ClusterAutoscaler fix, Metrics Server
Changelog since v0.9.8
Please see our roadmap for details on upcoming releases.
The next RC release will address: https://github.com/kubernetes-incubator/kube-aws/milestone/53
Component versions
Kubernetes: v1.8.4
Etcd: v3.2.9
Calico: v2.6.1
Helm/Tiller: v2.7.2
Actions required
The default IamFleetRole
has been changed on AWS side
- If you have one or more Spot-fleet backed node pools, ensure that you have the
aws-ec2-spot-fleet-tagging-role
role in your AWS account. Please locate it in the IAM role page in the AWS console.- In case your AWS account doesn't have one yet, please go ahead to the EC2 console and try to launch a spot fleet from there. You don't need to actually launch one but just trying to launch one will result in AWS to create the new default role for you. See #1022 (comment) for more detailed context.
Features
- #885: Dedicated worker CA and Etcd trusted CA bundle(Thanks to @redbaron)
- #889: Enable RBAC by default
- #945: Add initial support for NLB API endpoints(Thanks to @danielfm)
- #951: Fixes #946 Support drop-ins in customSystemdUnits(Thanks to @jeremyd)
- #963: Support deployment to AWS GovCloud(Thanks to @amdonov)
- #966: Convert kube-proxy to a DaemonSet(Thanks to @danielfm)
- #971: Kubernetes Dashboard 1.7 with RBAC and authentication.(Thanks to @camilb)
- #1009: Adding AlwaysPullImages admission controller option(Thanks to @kylegato)
- #973: Metrics Server addon.(Thanks to @camilb)
- #1023: Add support for S3 buckets with the default encryption enabled
- #1027: Support EC2 instance tags per node role
- #1035: Use templated image for metrics-server.(Thanks to @camilb)
Improvements
- #882: Do not encrypt certificate files, dont' load fingerprints if no raw file available(Thanks to @redbaron)
- #904: Fix too permissive IAM policy for CA associated to controller nodes
- #905: Fix the scheduling and permissions issue of CA
- #916: Bump default k8s to 1.7.5(Thanks to @c-knowles)
- #924: Remove
experimental.plugins.rbac
from cluster.yaml - #927: Drop the deprecated key
workerCount
in cluster.yaml - #934: Remove
mapPublicIPs
androuteTableId
in the top-level of cluster.yaml - #936: Remove
createRecordSet
to help newcomers bring up their first clusters - #944: Bump default k8s to 1.7.6(Thanks to @Vrtak-CZ)
- #959: Update kubedns(Thanks to @danielfm)
- #962: Update various components version.(Thanks to @camilb)
- #981: Bump the default Kubernetes version to v1.7.8-coreos.1
- #995: Only take snapshot if current member is a leader(Thanks to @martinssipenko)
- #1002: Experimental addons can all be uncommented(Thanks to @c-knowles)
- #1004: Add kube-proxy health check(Thanks to @dvdthms)
- #1005: Bump cluster-autoscaler version to v1.0.2
- #1008: Add some additional cleanup to rkt containers(Thanks to @dvdthms)
- #1017: fixes #990 disable sshd password authentication(Thanks to @jeremyd)
- #1020: Update RBAC API version to v1 from v1beta1(Thanks to @dragon3)
- #1021: Make kube-node-label more reliable
- #1030: Bump various components version.(Thanks to @camilb)
- #1040: Improve the configuration for Kubernetes Dashboard.(Thanks to @camilb)
Bug fixes
- #938: Handle worker-ca correctly when TLSBootstarpping is enabled(Thanks to @redbaron)
- #877: Fix the existing TLS CA support
- #888: Fix a potential YAML parsing error in cluster.yaml
- #894: Fix test timeouts in CI
- #895: Fix the hard-coded duration until an etcd cert generated by kube-aws expires
- #902: Add spot fleet support for the
awsNodeLabels
feature - #904: Fix too permissive IAM policy for CA associated to controller nodes
- #905: Fix the scheduling and permissions issue of CA
- #926: Emit errors when unknown keys are specified under
worker.nodePools[]
- #943: Fixes #942 etcdadm cannot find ca.pem(Thanks to @jeremyd)
- #951: Fixes #946 Support drop-ins in customSystemdUnits(Thanks to @jeremyd)
- #964: Add in missing ASG IAM permission for experimental.nodeDrainer.(Thanks to @tyrannasaurusbanks)
- #969: Remove bashisms from kube autosaver, makes it work with posix SH(Thanks to @redbaron)
- #975: Rollback to 1.7.7 hyperkube image, as 1.7.8 is actually 1.9.0 alpha(Thanks to @redbaron)
- #997: Load member .env file that is generated by etcdadm.(Thanks to @martinssipenko)
- #1014: Fix the render command to not wipe ca.pem
- #1015: Fix kubelet-to-apiserver connection checks on controller nodes not to fail in certain cases
- #1017: fixes #990 disable sshd password authentication(Thanks to @jeremyd)
- #1016: Save custom resource definitions in kube autosaver. Fix health check for kube-resources-autosave-dumper. Fix kubernetes dashboard port.(Thanks to @camilb)
- #1024: Fix the default FleetIamRole
- #1033: Add rkt container cleanup to journald-cloudwatch-logs service(Thanks to @dvdthms)
- #1036: Fix the creation of all metrics-server resources.(Thanks to @camilb)
- #1043: Various fixes to 0.9.9 rc.3
- #1067: Correct values for the
kubernetes.io/cluster/<Cluster ID>
tags - #1068: Allow toggling Metrics Server installation
Documentation
- #1065: Fix dashboard doc links(Thanks to @c-knowles)
- #1034: Quick start and high availability guides(Thanks to @c-knowles)
Other changes
v0.9.9-rc.4
Changelog since v0.9.9-rc.3
Please see our roadmap for details on upcoming releases.
Component versions
Kubernetes: v1.8.4
Etcd: v3.2.9
Calico: v2.6.1
Helm/Tiller: v2.7.2
Features
- #973: Metrics Server addon.(Thanks to @camilb)
- #1023: Add support for S3 buckets with the default encryption enabled
- #1027: Support EC2 instance tags per node role
- #1035: Use templated image for metrics-server.(Thanks to @camilb)
Improvements
- #1020: Update RBAC API version to v1 from v1beta1(Thanks to @dragon3)
- #1021: Make kube-node-label more reliable
- #1030: Bump various components version.(Thanks to @camilb)
- #1040: Improve the configuration for Kubernetes Dashboard.(Thanks to @camilb)
Bug fixes
- #1016: Save custom resource definitions in kube autosaver. Fix health check for kube-resources-autosave-dumper. Fix kubernetes dashboard port.(Thanks to @camilb)
- #1024: Fix the default FleetIamRole
- #1033: Add rkt container cleanup to journald-cloudwatch-logs service(Thanks to @dvdthms)
- #1036: Fix the creation of all metrics-server resources.(Thanks to @camilb)
- #1043: Various fixes to 0.9.9 rc.3
Documentation
- #1034: Quick start and high availability guides(Thanks to @c-knowles)
v0.9.9-rc.3
Changelog since v0.9.9-rc.2
Please see our roadmap for details on upcoming releases.
Component versions
Kubernetes: v1.8.2
Etcd: v3.2.9
Calico: v2.6.1
Helm/Tiller: v2.6.2
Features
Improvements
- #995: Only take snapshot if current member is a leader(Thanks to @martinssipenko)
- #1002: Experimental addons can all be uncommented(Thanks to @c-knowles)
- #1004: Add kube-proxy health check(Thanks to @dvdthms)
- #1005: Bump cluster-autoscaler version to v1.0.2
- #1008: Add some additional cleanup to rkt containers(Thanks to @dvdthms)
- #1017: fixes #990 disable sshd password authentication(Thanks to @jeremyd)
Bug fixes
- #997: Load member .env file that is generated by etcdadm.(Thanks to @martinssipenko)
- #1014: Fix the render command to not wipe ca.pem
- #1015: Fix kubelet-to-apiserver connection checks on controller nodes not to fail in certain cases
Other changes
- #1012: hack: Add a shortcut to run relnote from make
v0.9.9-rc.2 (BROKEN. Use v0.9.9-rc.3)
BROKEN: Controller nodes would certainly fail to rolling-update or roll-back due
to #991.
Changelog since v0.9.9-rc.1
Please see our roadmap for details on upcoming releases.
Component versions
Kubernetes: v1.8.2
Features
- #991: Check to ensure new API servers can receive communication from workers(Thanks to @dvdthms)
- #994: Add support for the Initializers admission control.(Thanks to @camilb)
Improvements
- #984: Update kubernetes-dashboard-init image.(Thanks to @camilb)
- #996: Bump kubernetes version to 1.8.2.(Thanks to @camilb)
Bug fixes
v0.9.9-rc.1
This release note is WIP.
Changelog since v0.9.8
Please see our roadmap for details on upcoming releases.
Component versions
Kubernetes: v1.7.8
Etcd: v3.2.9
Calico: v2.6.1
Helm/Tiller: v2.6.2
Actions required
Features
- #885: Dedicated worker CA and Etcd trusted CA bundle(Thanks to @redbaron)
- #889: Enable RBAC by default
- #938: Handle worker-ca correctly when TLSBootstarpping is enabled(Thanks to @redbaron)
- #945: Add initial support for NLB API endpoints(Thanks to @danielfm)
- #951: Fixes #946 Support drop-ins in customSystemdUnits(Thanks to @jeremyd)
- #963: Support deployment to AWS GovCloud(Thanks to @amdonov)
- #964: Add in missing ASG IAM permission for experimental.nodeDrainer.(Thanks to @tyrannasaurusbanks)
- #966: Convert kube-proxy to a DaemonSet(Thanks to @danielfm)
- #969: Remove bashisms from kube autosaver, makes it work with posix SH(Thanks to @redbaron)
- #971: Kubernetes Dashboard 1.7 with RBAC and authentication.(Thanks to @camilb)
- #975: Rollback to 1.7.7 hyperkube image, as 1.7.8 is actually 1.9.0 alpha(Thanks to @redbaron)
Improvements
- #882: Do not encrypt certificate files, dont' load fingerprints if no raw file available(Thanks to @redbaron)
- #904: Fix too permissive IAM policy for CA associated to controller nodes
- #905: Fix the scheduling and permissions issue of CA
- #916: Bump default k8s to 1.7.5(Thanks to @c-knowles)
- #924: Remove
experimental.plugins.rbac
from cluster.yaml - #927: Drop the deprecated key
workerCount
in cluster.yaml - #934: Remove
mapPublicIPs
androuteTableId
in the top-level of cluster.yaml - #936: Remove
createRecordSet
to help newcomers bring up their first clusters - #944: Bump default k8s to 1.7.6(Thanks to @Vrtak-CZ)
- #959: Update kubedns(Thanks to @danielfm)
- #962: Update various components version.(Thanks to @camilb)
- #981: Bump the default Kubernetes version to v1.7.8-coreos.1
Bug fixes
- #877: Fix the existing TLS CA support
- #888: Fix a potential YAML parsing error in cluster.yaml
- #894: Fix test timeouts in CI
- #895: Fix the hard-coded duration until an etcd cert generated by kube-aws expires
- #902: Add spot fleet support for the
awsNodeLabels
feature - #904: Fix too permissive IAM policy for CA associated to controller nodes
- #905: Fix the scheduling and permissions issue of CA
- #926: Emit errors when unknown keys are specified under
worker.nodePools[]
- #943: Fixes #942 etcdadm cannot find ca.pem(Thanks to @jeremyd)
- #951: Fixes #946 Support drop-ins in customSystemdUnits(Thanks to @jeremyd)
Documentation
Refactorings
Other changes
v0.9.8: Dedicated documentation site, experimental plugin system, flexible etcd IAM config, kube2iam, node authorizer/restriction, etc
Changelog since v0.9.7
Please see our roadmap for details on upcoming releases.
Component versions
Kubernetes: v1.7.4
Etcd: v3.2.5
Calico: v2.4.1
Helm/Tiller: v2.6.0
Actions required
-
#820: Simplify configuration for OIDC Authenticator.
- The key
dex
and its children in cluster.yaml has been basically renamed tooidc
and the correspondents in apiserver flags. See #820 for more information
- The key
-
#832: Update Calico to v2.4.1
- To maintain existing behavior when upgrading your existing cluster, follow these steps:
- In Namespaces that previously did not have the “DefaultDeny” annotation, you should delete any existing NetworkPolicy objects.
- In Namespaces that previously did have the “DefaultDeny” annotation, you can create the equivalent semantics by creating a NetworkPolicy that selects all pods but does not allow any traffic.
- See kubernetes/kubernetes#39164 (comment) for more details
- To maintain existing behavior when upgrading your existing cluster, follow these steps:
Features
- #731: Add cluster kube-aws version to outputs(Thanks to @Vrtak-CZ)
- #742: Install Tiller by default
- #752: Deny direct command execution on privileged containers(Thanks to @ytsarev)
- #760: Support cross-stack references of VPC, IGW
- #761: More flexible IAM configuration for etcd nodes
- #778: Better encryption error message(Thanks to @redbaron)
- #789: Ability to propagate custom options to kubelet(Thanks to @ytsarev)
- #791: Plugin System
- #792: Make PODs to resolve DNS names via locally running dnsmasq(Thanks to @dvdthms)
- #809: Automatically configure kube2iam.(Thanks to @camilb)
- #820: Simplify configuration for OIDC Authenticator.(Thanks to @camilb)
- #834: Move documentation to new site(Thanks to @c-knowles)
- Our documentation site is now at https://kubernetes-incubator.github.io/kube-aws/
- #851: Add support for Node Authorizer + Node Restriction admission controller(Thanks to @danielfm)
Improvements
- #740: Update the default etcd version to 3.2.1
- #743: Update CA to 0.6.0
- #746: Update Kubernetes to v1.7.0
- #755: Rename experimental.nodeLabels to controller.nodeLabels
- #756: Explicitly disallow tainting controller nodes
- #757: Remove deprecated keys in cluster.yaml
- #774: Update Kubernetes to v1.7.1
- #780: Stop using unnecessary autoscaling notification target/role
- #787: Rescheduler logs now piped to docker(Thanks to @c-knowles)
- #788: Additional permissions for heapster nanny(Thanks to @c-knowles)
- #794: Refactor node drainer implementation(Thanks to @danielfm)
- #817: Bump default k8s to 1.7.2(Thanks to @c-knowles)
- #818: Put kube2iam update strategy in the correct place(Thanks to @c-knowles)
- #821: Add Spot Fleet support for the automatic ALB target group attachment
- #828: Bump tiller to 2.5.1(Thanks to @c-knowles)
- #830: Bump default k8s to 1.7.3(Thanks to @c-knowles)
- #832: Update Calico to v2.4.1(Thanks to @tmjd)
- #835: cfn-signal depends on install-kube-system(Thanks to @dvdthms)
- #844: update default version of kubernetes dashboard to 1.6.3(Thanks to @Vrtak-CZ)
- #845: update default version of ETCd to 3.2.5(Thanks to @Vrtak-CZ)
- #852: Update tiller to v2.6.0(Thanks to @danielfm)
- #853: Update kubernetes to v1.7.4(Thanks to @danielfm)
- #867: Do not overwrite the tokens.csv file when re-rendering credentials(Thanks to @danielfm)
- #879: Configure tolerations for kube2iam DaemonSet. Update ETCD version to 3.2.6.(Thanks to @camilb)
- #884: Do not allow enabling Node authorizer without RBAC(Thanks to @danielfm)
- #886: core: add kube2iam image repo and tag(Thanks to @jpb)
Bug fixes
- #713: Fix kube-resources-autosave when kube2iam is enabled(Thanks to @camilb)
- #749: Fix kubelet bootstrap for Kubernetes 1.7(Thanks to @danielfm)
- #763: Fix node labeling to allow scheduling cluster-autoscaler to workers
- #773: Fix --ami-id
- #797: Issue #796 - cluster.yaml missing dnsMasqMetricsImage.repo key(Thanks to @wallentx)
- #814: Fix for typo introduced in #792(Thanks to @redbaron)
- #824: Fix managed role name validation(Thanks to @adyromantika)
- #827: Fixed typo in the error message(Thanks to @sathiyas)
- #840: Fix Typo to improve GoReport Card(Thanks to @asifdxtreme)
- #849: Fix failing worker and controller nodes when Calico is enabled
- #870: Fix the spot fleet support not to use incorrect bid prices by default
- #871: Fix node pool release channel
Documentation
- #733: Bugfix: CloudWatchLogging always disabled for Worker nodes(Thanks to @jollinshead)
- #748: Provide real-time feedback from Journald logs when updating/creating …(Thanks to @jollinshead)
- #781: Fix (Journald logging) localStreaming typo.(Thanks to @jollinshead)
- #801: CloudFormation events stream to stdout during kube-aws up/update(Thanks to @jollinshead)
- #826: Updating instructions for MFA token(Thanks to @sathiyas)
- #829: Add AWS_PROFILE to FAQ(Thanks to @Vrtak-CZ)
- #850: Feature/add new docs(Thanks to @c-knowles)
- #860: doc: Fix the link from the getting-started/addons page to the next
- #861: "Edit This Page" links on the doc is linking to wrong places
- #863: Tidy contributor/developer guide(Thanks to @c-knowles)
- #864: "Edit This Page" links on the doc are now linked to corresponding edit pages on GitHub
- #865: Fix an invalid link in the doc
Refactorings
- #777: Use consistent names for validation functions(Thanks to @danielfm)
- #856: Move book.json to project root(Thanks to @c-knowles)
Other changes
- #739: Update OWNERS
- #741: Update golang to v1.8.3
- #751: Initial plugins proposal(Thanks to @c-knowles)
- #770: Containerized test run(Thanks to @ytsarev)
- #807: Update ROADMAP
- #836: Remove redundant step(Thanks to @asifdxtreme)
- #838: Fix Typo in Events Code of Conduct(Thanks to @mbssaiakhil)
- #858: Script the publishing process of the kube-aws documentation
- #859: Automate publishing of the dedicated kube-aws documentation site
- #862: Script release notes gathering
- #869: e2e: Add support for NodeAuthorizer
- #872: relnote: Also consider changes under docs/ to be documentation updates
- #873: Improve the release note gathering script
- #876: e2e: Add support for toggling RBAC
v0.9.8-rc.3
Changelog since v0.9.8-rc.2
Component versions
Kubernetes: v1.7.4
Etcd: v3.2.5
Calico: v2.4.1
Helm/Tiller: v2.6.0
Improvements
- #879: Configure tolerations for kube2iam DaemonSet. Update ETCD version to 3.2.6.(Thanks to @camilb)
- #884: Do not allow enabling Node authorizer without RBAC(Thanks to @danielfm)
- #886: core: add kube2iam image repo and tag(Thanks to @jpb)
Other changes
v0.9.8-rc.2
Changelog since v0.9.8-rc.1
Component versions
Kubernetes: v1.7.4
Etcd: v3.2.5
Helm/Tiller: v2.6.0
Features
- #834: Move documentation to new site(Thanks to @c-knowles)
- #851: Add support for Node Authorizer + Node Restriction admission controller(Thanks to @danielfm)
Improvements
- #852: Update tiller to v2.6.0(Thanks to @danielfm)
- #853: Update kubernetes to v1.7.4(Thanks to @danielfm)
- #867: Do not overwrite the tokens.csv file when re-rendering credentials(Thanks to @danielfm)
Bug fixes
- #870: Fix the spot fleet support not to use incorrect bid prices by default
- #871: Fix node pool release channel
Documentation
- #850: Feature/add new docs(Thanks to @c-knowles)
- #860: doc: Fix the link from the getting-started/addons page to the next
- #861: "Edit This Page" links on the doc is linking to wrong places
- #863: Tidy contributor/developer guide(Thanks to @c-knowles)
- #864: "Edit This Page" links on the doc are now linked to corresponding edit pages on GitHub
- #865: Fix an invalid link in the doc
Refactorings
- #856: Move book.json to project root(Thanks to @c-knowles)