Skip to content

Commit

Permalink
Release v0.3.0
Browse files Browse the repository at this point in the history
  • Loading branch information
brynpickering authored Sep 29, 2023
2 parents 73b9d92 + 3271d8c commit 1b00bfa
Show file tree
Hide file tree
Showing 34 changed files with 2,782 additions and 2,159 deletions.
14 changes: 5 additions & 9 deletions .github/ISSUE_TEMPLATE/BUG-REPORT.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,18 +26,14 @@ body:
- label: Linux
validations:
required: true
- type: dropdown
- type: textarea
id: version
attributes:
label: Version
description: What version of PAM are you using?
options:
- 0.2.0
- 0.2.1
- 0.2.2
- 0.2.3
- 0.2.4
- 0.2.5-dev
description: What version of pam are you using?
placeholder: v0.3.0
validations:
required: false
- type: textarea
id: logs
attributes:
Expand Down
12 changes: 3 additions & 9 deletions .github/ISSUE_TEMPLATE/FEATURE-REQUEST.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,17 +14,11 @@ body:
value: "PAM should include dog walkers!"
validations:
required: true
- type: dropdown
- type: textarea
id: version
attributes:
label: Version
description: What version of PAM are you using?
options:
- 0.2.0
- 0.2.1
- 0.2.2
- 0.2.3
- 0.2.4
- 0.2.5-dev
description: What version of pam are you using?
placeholder: v0.3.0
validations:
required: true
3 changes: 2 additions & 1 deletion .github/workflows/pre-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,6 @@ on:
jobs:
conda-build:
uses: arup-group/actions-city-modelling-lab/.github/workflows/conda-build.yml@main
secrets: inherit
with:
package_name: pam
package_name: cml-pam
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ jobs:
uses: arup-group/actions-city-modelling-lab/.github/workflows/conda-upload.yml@main
secrets: inherit
with:
package_name: pam
package_name: cml-pam

docs-stable:
permissions:
Expand Down
53 changes: 36 additions & 17 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,91 +16,110 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]
## [v0.3.0] - 2023-09-27

### Fixed
- Fix readme CI badge ([#248])
- Fix for cropping as per issue [#241](https://github.com/arup-group/pam/issues/241) ([#240]).
- optimise.grid.grid_search fixed ([#239]).
- `TourPlanner` prevents sampling of duplicate destinations, and prevents origin being sampled as a destination ([#231]).
- Fix for [#221](https://github.com/arup-group/pam/issues/221), improved "pt simplification" ([#222])

- readme CI badge ([#248])
- plan cropping as per issue [#241] ([#240]).
- [][pam.optimise.grid.grid_search] ([#239]).
- [`TourPlanner`][pam.samplers.tour.TourPlanner] prevents sampling of duplicate destinations, and prevents origin being sampled as a destination ([#231]).
- [][pam.activity.Plan.simplify_pt_trips] as per issue [#221], improving "pt simplification" ([#222])
- Slow loading of data with e.g., [pam.read.load_travel_diary][pam.read.diary.load_travel_diary] when using pandas v2.1.1 (caused by `pandas.MultiIndex.groupby`, see [pandas issue #55256](https://github.com/pandas-dev/pandas/issues/55256)). ([#258])

### Added

- MATSim warm starting example ([#239]).
- Support for MATSim vehicles files ([#215]).
- Anaconda package of PAM, available on the `city-modelling-lab` channel ([#211]).
- Python versions 3.9 to 3.11 support ([#192], [#210]).
- Documentation, now available at https://arup-group.github.io/pam ([#197]).
- Time-space prism method for selecting the location of non-mandatory activities ([#252](https://github.com/arup-group/pam/pull/252)).
- Documentation, now available at <https://arup-group.github.io/pam> ([#197]).
- Time-space prism method for selecting the location of non-mandatory activities ([#252]).
- Simple IPF approach for generating synthetic populations ([#253]).
- More control over the look of activity plan plots, with keyword arguments for [][pam.plot.plot_activities] (accessed via e.g. [pam.core.Person.plot]) extended to allow figure width and per-activity label font sizes to be updated ([#249]).
- **internal** [Codecov](https://codecov.io) and [pre-commit](https://pre-commit.ci/) CI bots ([#202]).
- **internal** Github action job to build PAM and run tests on a Windows machine ([#192]).
- **internal** Github action job to build PAM and run tests on Windows and MacOS machines ([#192]).
- **internal** Contribution guidelines and issue/pull request templates ([#207]).

### Changed

- Documentation and examples improved ([#239]).
- `ActivityDuration` class name changed to `DurationEstimator` ([#231]).
- `TourPlanner` class sequences stops using GreedyTSP algorithm, rather than previous method sorting by distance from depot ([#231]).
- [`TourPlanner`][pam.samplers.tour.TourPlanner] class sequences stops using GreedyTSP algorithm, rather than previous method sorting by distance from depot ([#231]).
- Minor changes to docs for zsh users (eg `pip install '.[dev]'`)([#219]).
- Recommended installation instructions, to use [mamba](https://mamba.readthedocs.io/en/latest/index.html) instead of pip ([#192], [#211]).
- Docker image entry point from python to bash ([#230]).
- **internal** Source code and example notebook code layout to align with pep8 guidelines and to remove unused dependency imports ([#196], [#201]).
- **internal** Docstrings to Google style ([#208])
- **internal** development toolkit, moving from internal scripts to pytest plugins ([#193]).
- **internal** CI actions link to reusable ones from `arup-group/actions-city-modelling-lab/`, including new memory profiling and multi-OS / python version tests ([#243]).

### Removed

- Example data files not accessed by any example notebook ([#196]).
- `ActivityDuration` class, replaced with methods in [`TourPlanner`][pam.samplers.tour.TourPlanner] and in `pam.samplers.tour` ([#231]).
- **internal** Unused scripts that were outside the source code directory ([#199]).


## [v0.2.4] - 2023-06-08

This version is a pre-release

### Added
- Option to skip existing facility locations during facility sampling, by adding the `location_override` argument to the `population.sample_locs` method ([#190]).
- More control over the look of activity plan plots, with keyword arguments for e.g. `Person.plot()` extended to allow figure width and per-activity label fontsizes to be updated.

- Option to skip existing facility locations during facility sampling, by adding the `location_override` argument to the [`sample_locs`][pam.core.Population.sample_locs] method ([#190]).

## [v0.2.3] - 2023-06-07

This version is a pre-release

### Fixed

- A bug when creating origin-destination (OD) matrices within the `ODFactory` class ([#191]).

## [v0.2.2] - 2023-05-30

### Added

- Abstract mode and location choice modules, available within the `pam.planner.choice_location` module ([#189]).

### Changed

- **internal** Docker base image to ensure successful CodeBuild CD pipeline builds ([#188]).

## [v0.2.1] - 2023-05-11

### Added

- **internal** initialisation files, such that PAM submodules can be accessed after installing the repository as a package with pip ([#187]).

## [v0.2.0] - 2023-05-10

This is the first version of PAM which follows semantic versioning and can be considered the first _official_ release of the package.


[unreleased]: https://github.com/arup-group/pam/compare/v0.2.4...main
[v0.3.0]: https://github.com/arup-group/pam/compare/v0.2.4...v0.3.0
[v0.2.4]: https://github.com/arup-group/pam/compare/v0.2.3...v0.2.4
[v0.2.3]: https://github.com/arup-group/pam/compare/v0.2.2...v0.2.3
[v0.2.2]: https://github.com/arup-group/pam/compare/v0.2.1...v0.2.2
[v0.2.1]: https://github.com/arup-group/pam/compare/v0.2.0...v0.2.1
[v0.2.0]: https://github.com/arup-group/pam/compare/initial_version...v0.2.0

[#258]: https://github.com/arup-group/pam/pull/258
[#253]: https://github.com/arup-group/pam/pull/253
[#252]: https://github.com/arup-group/pam/pull/252
[#249]: https://github.com/arup-group/pam/pull/249
[#248]: https://github.com/arup-group/pam/pull/248
[#241]: https://github.com/arup-group/pam/issues/241
[#240]: https://github.com/arup-group/pam/pull/240
[#239]: https://github.com/arup-group/pam/pull/239
[#231]: https://github.com/arup-group/pam/pull/231
[#230]: https://github.com/arup-group/pam/pull/230
[#243]: https://github.com/arup-group/pam/pull/243
[#222]: https://github.com/arup-group/pam/pull/222
[#221]: https://github.com/arup-group/pam/issues/221
[#219]: https://github.com/arup-group/pam/pull/219
[#215]: https://github.com/arup-group/pam/pull/215
[#211]: https://github.com/arup-group/pam/pull/211
[#210]: https://github.com/arup-group/pam/pull/210
[#208]: https://github.com/arup-group/pam/pull/208
[#207]: https://github.com/arup-group/pam/pull/207
[#202]: https://github.com/arup-group/pam/pull/202
[#201]: https://github.com/arup-group/pam/pull/201
Expand All @@ -113,4 +132,4 @@ This is the first version of PAM which follows semantic versioning and can be co
[#190]: https://github.com/arup-group/pam/pull/190
[#189]: https://github.com/arup-group/pam/pull/189
[#188]: https://github.com/arup-group/pam/pull/188
[#187]: https://github.com/arup-group/pam/pull/187
[#187]: https://github.com/arup-group/pam/pull/187
6 changes: 3 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,12 +83,12 @@ When adding docstrings, we request you use the [Google docstring style](https://
### Pre-release

- [ ] Re-run tutorial Jupyter notebooks (`pytest examples/ --overwrite`).
- [ ] Make sure documentation builds without errors (`mike deploy [version]`, where `[version]` is the current minor release of the form `X.Y`).
- [ ] Make sure documentation builds without errors (`mike deploy [version]`, where `[version]` is the current patch release of the form `X.Y.Z`).
- [ ] Make sure the [changelog][changelog] is up-to-date, especially that new features and backward incompatible changes are clearly marked.

### Create release

- [ ] Bump the version number in `pyproject.toml`
- [ ] Bump the version number in `pam/__init__.py`
- [ ] Update the [changelog][changelog] with final version number of the form `vX.Y.Z`, release date, and github `compare` link (at the bottom of the page).
- [ ] Commit with message `Release vX.Y.Z`, then add a `vX.Y.Z` tag.
- [ ] Create a release pull request to verify that the conda package builds successfully.
Expand All @@ -97,7 +97,7 @@ When adding docstrings, we request you use the [Google docstring style](https://
### Post-release

- [ ] Update the changelog, adding a new `[Unreleased]` heading.
- [ ] Update `pyproject.toml` to the next version appended with `.dev0`, in preparation for the next main commit.
- [ ] Update `pam/__init__.py` to the next version appended with `.dev0`, in preparation for the next main commit.


<!--- --8<-- [end:docs] -->
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2020 Arup
Copyright (c) 2020-2023 Arup

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
5 changes: 3 additions & 2 deletions conda.recipe/meta.yaml
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
{% set pyproject = load_file_data('../pyproject.toml', from_recipe_dir=True) %}
{% set version = load_file_regex(load_file='../pam/__init__.py', regex_pattern="__version__ = \"([a-zA-Z0-9\.].*?)\"", from_recipe_dir=True) %}
{% set requirements = load_file_regex(load_file='../requirements/base.txt', regex_pattern="", from_recipe_dir=True) %}
{% set requirements_dev = load_file_regex(load_file='../requirements/dev.txt', regex_pattern="", from_recipe_dir=True) %}

package:
name: {{ pyproject.project.name }}
version: {{ pyproject.project.version }}
version: {{ version.group(1) }}

source:
path: ..
Expand Down Expand Up @@ -55,4 +56,4 @@ about:
doc_url: {{ pyproject.project.urls.documentation }}
summary: {{ pyproject.project.description }}
license: {{ pyproject.project.license.text }}
license_file: LICENSE
license_file: LICENSE
176 changes: 112 additions & 64 deletions examples/01_basics.ipynb

Large diffs are not rendered by default.

105 changes: 72 additions & 33 deletions examples/02a_tabular_read_write.ipynb

Large diffs are not rendered by default.

36 changes: 25 additions & 11 deletions examples/02b_matsim_read_write.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,10 @@
"start_time": "2020-05-18T14:31:06.133057Z"
},
"execution": {
"iopub.execute_input": "2023-08-09T10:04:19.157194Z",
"iopub.status.busy": "2023-08-09T10:04:19.156774Z",
"iopub.status.idle": "2023-08-09T10:04:20.725396Z",
"shell.execute_reply": "2023-08-09T10:04:20.724706Z"
"iopub.execute_input": "2023-09-22T10:52:08.829526Z",
"iopub.status.busy": "2023-09-22T10:52:08.829295Z",
"iopub.status.idle": "2023-09-22T10:52:09.921732Z",
"shell.execute_reply": "2023-09-22T10:52:09.921374Z"
}
},
"outputs": [],
Expand Down Expand Up @@ -56,10 +56,10 @@
"start_time": "2020-05-18T13:40:08.557000Z"
},
"execution": {
"iopub.execute_input": "2023-08-09T10:04:20.729542Z",
"iopub.status.busy": "2023-08-09T10:04:20.729097Z",
"iopub.status.idle": "2023-08-09T10:04:20.743170Z",
"shell.execute_reply": "2023-08-09T10:04:20.741767Z"
"iopub.execute_input": "2023-09-22T10:52:09.923714Z",
"iopub.status.busy": "2023-09-22T10:52:09.923529Z",
"iopub.status.idle": "2023-09-22T10:52:09.943255Z",
"shell.execute_reply": "2023-09-22T10:52:09.942840Z"
}
},
"outputs": [
Expand Down Expand Up @@ -94,7 +94,14 @@
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"metadata": {
"execution": {
"iopub.execute_input": "2023-09-22T10:52:09.965932Z",
"iopub.status.busy": "2023-09-22T10:52:09.965678Z",
"iopub.status.idle": "2023-09-22T10:52:09.988187Z",
"shell.execute_reply": "2023-09-22T10:52:09.987789Z"
}
},
"outputs": [],
"source": [
"from pam import write\n",
Expand Down Expand Up @@ -130,7 +137,14 @@
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"metadata": {
"execution": {
"iopub.execute_input": "2023-09-22T10:52:09.989729Z",
"iopub.status.busy": "2023-09-22T10:52:09.989627Z",
"iopub.status.idle": "2023-09-22T10:52:10.015293Z",
"shell.execute_reply": "2023-09-22T10:52:10.014977Z"
}
},
"outputs": [],
"source": [
"from pam.read import stream_matsim_persons\n",
Expand Down Expand Up @@ -178,7 +192,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.4"
"version": "3.11.5"
},
"latex_envs": {
"LaTeX_envs_menu_present": true,
Expand Down
Loading

0 comments on commit 1b00bfa

Please sign in to comment.