|
1 |
| -# PyConline AU 2020 website |
| 1 | +# PyConline AU 2021 website |
2 | 2 |
|
3 |
| -To build this website, you will need the following: |
| 3 | +This website is generated using [statik](https://github.com/thanethomson/statik) with automatic deployments by [Netlify](https://www.netlify.com/) |
4 | 4 |
|
5 |
| -- **Python 3.7** installed and activated. |
6 |
| -- **Node.js** and **Yarn** installed. |
7 |
| -- **Poetry** installed; see [the installation documentation](https://python-poetry.org/docs/#installation). |
| 5 | +For more information, see [infrastructure.md](infrastructure.md) |
8 | 6 |
|
9 |
| -Then: |
| 7 | +## Submitting changes |
10 | 8 |
|
11 |
| -- Run `poetry install`. Poetry will create a virtualenv for you. |
12 |
| -- Run `yarn install`. |
13 |
| -- Run `poetry run supervisord`. Supervisor will start up the two processes you'll need for local development: `parcel` (to build frontend static assets) and `statik` (to build the site itself). |
| 9 | +Pull requests submitted to this repo automatically generate change previews using [Netlify](https://www.netlify.com/). Click the "**deploy/netlify**" check link to see your preview. |
14 | 10 |
|
15 |
| -From there, the [Statik documentation](https://github.com/thanethomson/statik/wiki) will be the place to look for most things. |
| 11 | +## Local development |
16 | 12 |
|
17 |
| -Deployment is automated, and runs on Netlify; see the `netlify.toml` for details. When you file a pull request against this repo, Netlify will build the site (provided the original branch is also inside this repo; sorry, folks outside the core team). A "check" will come up with the name **deploy/netlify**; click Details next to it to go to the preview for that PR. |
| 13 | +If your change is larger and you require a local development environment you will require a number of programs. |
18 | 14 |
|
19 |
| -## Timezones! |
| 15 | +Links provided favour macOS using [Homebrew](https://brew.sh/), but will refer to general download information as well. |
20 | 16 |
|
21 |
| -It turns out that, regrettably, the world does not run entirely on the `Australia/Adelaide` timezone. To accommodate those who insist on using whole-hour UTC offsets, all times should be written like this: |
| 17 | +* **[Python 3.7](https://www.python.org/downloads/)** minimum |
| 18 | + * we recommend installing via [pyenv](https://github.com/pyenv/pyenv) ([brew](https://formulae.brew.sh/formula/pyenv) or [download](https://github.com/pyenv/pyenv#installation)) |
| 19 | +* **[Node.js](https://nodejs.org/en/)** ([brew](https://formulae.brew.sh/formula/node) or [download](https://nodejs.org/en/download/)) |
| 20 | +* **[Poetry](https://python-poetry.org)** ([brew](https://formulae.brew.sh/formula/poetry) or [downoad](https://python-poetry.org/docs/#installation)) |
| 21 | + |
| 22 | +Once installed, fork this repo and clone, then to install this codebase's dependencies: |
| 23 | + |
| 24 | +```shell |
| 25 | +poetry install # python dependencies, creates virtualenv for you |
| 26 | +yarn install # javascript dependencies |
| 27 | +``` |
| 28 | + |
| 29 | +Finally, start the local webserver: |
| 30 | + |
| 31 | +```shell |
| 32 | +poetry run supervisord |
| 33 | +``` |
| 34 | + |
| 35 | +## Changes from previous years |
| 36 | + |
| 37 | +2021 is running with a home timezone of "+10:00". It still uses some of the [timezone hacks](https://github.com/pyconau/2020-website#timezones) from 2020, but without the half hour offset. |
| 38 | + |
| 39 | +However, all times should still be written as completely as possible. |
22 | 40 |
|
23 | 41 | ```
|
24 |
| -<time datetime="2020-07-16T08:30+09:30">Thursday 16 July, 8:30am ACST</time> |
| 42 | +<time datetime="2021-07-16T08:00+10:00"> |
| 43 | + Friday 16 July, 8:00am AEST |
| 44 | +</time> |
25 | 45 | ```
|
26 | 46 |
|
27 |
| -The site has some JavaScript that will pick this up, and if the user's timezone differs from the one in the timestamp, append the local time. (For instance, they might see _Thursday 16 July, 8:30am ACST (9:00am AEST)_ or _Thursday 16 July, 8:30am ACST (Wed, 7:00pm ET)_.) |
| 47 | +The site has some JavaScript that will pick this up, and if the user's timezone differs from the one in the timestamp, append the local time. (For instance, they might see _Friday 16 July, 8:00am AEST (10:00am NZST)_ or _Friday 16 July, 8:00am ACST (Thurs, 7:00pm ET)_.) |
28 | 48 |
|
29 | 49 | This works in HTML and Markdown (since Markdown can have arbitrary HTML in most places).
|
30 | 50 |
|
31 |
| -Note that the colon between the offset hours and minutes **must be present** (e.g. `+0930` won't work)! |
| 51 | +Note that the colon between the offset hours and minutes **must be present** (e.g. `+1000` won't work)! |
32 | 52 |
|
33 |
| -## Local development issues |
| 53 | +## Issues with local development |
34 | 54 |
|
35 |
| -Are you on macOS Catalina and getting hundreds of `API_UNAVAILABLE`/`clang` issues when running `poetry install`? |
| 55 | +### macOS issues with `API_UNAVAILABLE` |
36 | 56 |
|
37 |
| -Try [this tip](https://github.com/gorakhargosh/watchdog/issues/628#issuecomment-581480649): |
| 57 | +If you are running macOS Catalina and getting hundreds of `API_UNAVAILABLE`/`clang` issues when running `poetry install`, try [this tip](https://github.com/gorakhargosh/watchdog/issues/628#issuecomment-581480649): |
38 | 58 |
|
39 |
| -- Check how many SDKs you have installed in `/Library/Developer/CommandLineTools/SDKs`. |
40 |
| -- If you have both `MacOSX10.14.sdk` and `MacOSX10.15.sdk`: |
| 59 | +- Check how many SDKs you have installed: |
| 60 | + |
| 61 | + ``` |
| 62 | + ls /Library/Developer/CommandLineTools/SDKs |
| 63 | + ``` |
| 64 | +- If you have both `MacOSX10.14.sdk` and `MacOSX10.15.sdk`, remove the older version: |
41 | 65 |
|
42 | 66 | ```
|
43 | 67 | rm -rf /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk
|
|
0 commit comments