Skip to content

Commit f189143

Browse files
authored
Merge pull request #582 from ActivitySim/develop
Release 1.1
2 parents 3df695b + 0412a0b commit f189143

File tree

1,749 files changed

+66889
-49957
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,749 files changed

+66889
-49957
lines changed

.bumpversion.cfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[bumpversion]
2-
current_version = 1.0.4
2+
current_version = 1.1.0
33
commit = True
44
tag = True
55
parse = (?P<major>\d+)\.(?P<minor>\d+)\.(?P<patch>\d+)(\.(?P<release>.*))?

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,3 +72,4 @@ _test_est
7272
*_local/
7373
*_local.*
7474

75+
**/output/

.travis.yml

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -19,22 +19,24 @@ jobs:
1919
- env: TEST_SUITE=activitysim/core
2020

2121
- stage: Examples
22-
name: "MTC Example"
23-
env: TEST_SUITE=activitysim/examples/example_mtc/test
22+
name: "Prototype MTC"
23+
env: TEST_SUITE=activitysim/examples/prototype_mtc/test
24+
- name: "Prototype MTC (Extended)"
25+
env: TEST_SUITE=activitysim/examples/prototype_mtc_extended/test
2426
- name: "Multizone Example"
25-
env: TEST_SUITE=activitysim/examples/example_multiple_zone/test
27+
env: TEST_SUITE=activitysim/examples/placeholder_multiple_zone/test
2628
- name: "Marin Example"
27-
env: TEST_SUITE=activitysim/examples/example_marin/test
29+
env: TEST_SUITE=activitysim/examples/prototype_marin/test
2830
- name: "ARC Example"
29-
env: TEST_SUITE=activitysim/examples/example_arc/test
31+
env: TEST_SUITE=activitysim/examples/prototype_arc/test
3032
- name: "SEMCOG Example"
31-
env: TEST_SUITE=activitysim/examples/example_semcog/test
33+
env: TEST_SUITE=activitysim/examples/prototype_semcog/test
3234
- name: "PSRC Example"
33-
env: TEST_SUITE=activitysim/examples/example_psrc/test
35+
env: TEST_SUITE=activitysim/examples/placeholder_psrc/test
3436
- name: "SANDAG Example"
35-
env: TEST_SUITE=activitysim/examples/example_sandag/test
37+
env: TEST_SUITE=activitysim/examples/placeholder_sandag/test
3638
- name: "SANDAG Cross-Border Example"
37-
env: TEST_SUITE=activitysim/examples/example_sandag_xborder/test
39+
env: TEST_SUITE=activitysim/examples/prototype_sandag_xborder/test
3840

3941
- stage: Estimation Mode
4042
name: "Larch Test"
@@ -92,12 +94,11 @@ install:
9294
script:
9395
# This is the "default" script used for each test suite, unless overridden with a "script" in the jobs above.
9496
# build 2 and 3 zone test data twice since the Python test code on Linux sees these as different locations
95-
- python activitysim/examples/example_multiple_zone/scripts/two_zone_example_data.py
96-
- python activitysim/examples/example_multiple_zone/scripts/three_zone_example_data.py
97-
- python /home/travis/miniconda/envs/asimtest/lib/python$TRAVIS_PYTHON_VERSION/site-packages/activitysim/examples/example_multiple_zone/scripts/two_zone_example_data.py
98-
- python /home/travis/miniconda/envs/asimtest/lib/python$TRAVIS_PYTHON_VERSION/site-packages/activitysim/examples/example_multiple_zone/scripts/three_zone_example_data.py
99-
# pycodestyle
100-
- pycodestyle activitysim
97+
- python activitysim/examples/placeholder_multiple_zone/scripts/two_zone_example_data.py
98+
- python activitysim/examples/placeholder_multiple_zone/scripts/three_zone_example_data.py
99+
- python /home/travis/miniconda/envs/asimtest/lib/python$TRAVIS_PYTHON_VERSION/site-packages/activitysim/examples/placeholder_multiple_zone/scripts/two_zone_example_data.py
100+
- python /home/travis/miniconda/envs/asimtest/lib/python$TRAVIS_PYTHON_VERSION/site-packages/activitysim/examples/placeholder_multiple_zone/scripts/three_zone_example_data.py
101+
- black --check --diff activitysim
101102
# run specific TEST_SUITE job on travis to avoid job max time
102103
- travis_wait 50 py.test $TEST_SUITE --cov activitysim --cov-report term-missing --durations=0
103-
- coveralls
104+
# coveralls # disable coveralls service, which errors frequently

HOW_TO_RELEASE.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,8 @@
6060
regular test suite takes some time to run, between about half an hour and
6161
two hours depending on the specs of your machine.
6262
```sh
63-
python activitysim/examples/example_multiple_zone/scripts/two_zone_example_data.py
64-
python activitysim/examples/example_multiple_zone/scripts/three_zone_example_data.py
63+
python activitysim/examples/placeholder_multiple_zone/scripts/two_zone_example_data.py
64+
python activitysim/examples/placeholder_multiple_zone/scripts/three_zone_example_data.py
6565
pytest .
6666
```
6767

@@ -83,7 +83,7 @@
8383
python ../activitysim/examples/scan_examples_for_errors.py .
8484
```
8585
86-
00. Test the notebooks in `activitysim/examples/example_mtc/notebooks`.
86+
00. Test the notebooks in `activitysim/examples/prototype_mtc/notebooks`.
8787
There are also demo notebooks for estimation, but their functionality
8888
is completely tested in the unit tests run previously.
8989

LICENSE.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
BSD 3-Clause License
22

3-
Copyright (c) After March 2016, Contributing Authors
4-
Copyright (c) Before March 2016, UrbanSim Inc
3+
Copyright (c) Association of Metropolitan Planning Organizations Research Foundation
4+
55
All rights reserved.
66

77
Redistribution and use in source and binary forms, with or without

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
ActivitySim
22
===========
33

4-
[![Build Status](https://travis-ci.org/ActivitySim/activitysim.svg?branch=master)](https://travis-ci.org/ActivitySim/activitysim)[![Coverage Status](https://coveralls.io/repos/github/ActivitySim/activitysim/badge.svg?branch=master)](https://coveralls.io/github/ActivitySim/activitysim?branch=master)
4+
[![Build Status](https://travis-ci.com/ActivitySim/activitysim.svg?branch=master)](https://travis-ci.org/github/ActivitySim/activitysim)[![Coverage Status](https://coveralls.io/repos/github/ActivitySim/activitysim/badge.svg?branch=master)](https://coveralls.io/github/ActivitySim/activitysim?branch=master)
55

66
The mission of the ActivitySim project is to create and maintain advanced, open-source,
77
activity-based travel behavior modeling software based on best software development
@@ -15,4 +15,4 @@ and benefit from contributions of other agency partners.
1515

1616
## Documentation
1717

18-
https://activitysim.github.io/activitysim
18+
https://activitysim.github.io/activitysim

activitysim/__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
# See full license in LICENSE.txt.
33

44

5-
__version__ = '1.0.4'
6-
__doc__ = 'Activity-Based Travel Modeling'
5+
__version__ = "1.1.0"
6+
__doc__ = "Activity-Based Travel Modeling"

activitysim/abm/__init__.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
11
# ActivitySim
22
# See full license in LICENSE.txt.
3-
from . import misc
4-
from . import tables
5-
from . import models
3+
from . import misc, models, tables

activitysim/abm/misc.py

Lines changed: 22 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44

55
import pandas as pd
66

7-
from activitysim.core import config
8-
from activitysim.core import inject
7+
from activitysim.core import config, inject
98

109
# FIXME
1110
# warnings.filterwarnings('ignore', category=pd.io.pytables.PerformanceWarning)
@@ -18,26 +17,28 @@
1817
def households_sample_size(settings, override_hh_ids):
1918

2019
if override_hh_ids is None:
21-
return settings.get('households_sample_size', 0)
20+
return settings.get("households_sample_size", 0)
2221
else:
2322
return 0 if override_hh_ids is None else len(override_hh_ids)
2423

2524

2625
@inject.injectable(cache=True)
2726
def override_hh_ids(settings):
2827

29-
hh_ids_filename = settings.get('hh_ids', None)
28+
hh_ids_filename = settings.get("hh_ids", None)
3029
if hh_ids_filename is None:
3130
return None
3231

3332
file_path = config.data_file_path(hh_ids_filename, mandatory=False)
3433
if not file_path:
35-
logger.error("hh_ids file name '%s' specified in settings not found" % hh_ids_filename)
34+
logger.error(
35+
"hh_ids file name '%s' specified in settings not found" % hh_ids_filename
36+
)
3637
return None
3738

38-
df = pd.read_csv(file_path, comment='#')
39+
df = pd.read_csv(file_path, comment="#")
3940

40-
if 'household_id' not in df.columns:
41+
if "household_id" not in df.columns:
4142
logger.error("No 'household_id' column in hh_ids file %s" % hh_ids_filename)
4243
return None
4344

@@ -47,19 +48,23 @@ def override_hh_ids(settings):
4748
logger.error("No households in hh_ids file %s" % hh_ids_filename)
4849
return None
4950

50-
logger.info("Using hh_ids list with %s households from file %s" %
51-
(len(household_ids), hh_ids_filename))
51+
logger.info(
52+
"Using hh_ids list with %s households from file %s"
53+
% (len(household_ids), hh_ids_filename)
54+
)
5255

5356
return household_ids
5457

5558

5659
@inject.injectable(cache=True)
5760
def trace_hh_id(settings):
5861

59-
id = settings.get('trace_hh_id', None)
62+
id = settings.get("trace_hh_id", None)
6063

6164
if id and not isinstance(id, int):
62-
logger.warning("setting trace_hh_id is wrong type, should be an int, but was %s" % type(id))
65+
logger.warning(
66+
"setting trace_hh_id is wrong type, should be an int, but was %s" % type(id)
67+
)
6368
id = None
6469

6570
return id
@@ -68,9 +73,11 @@ def trace_hh_id(settings):
6873
@inject.injectable(cache=True)
6974
def trace_od(settings):
7075

71-
od = settings.get('trace_od', None)
76+
od = settings.get("trace_od", None)
7277

73-
if od and not (isinstance(od, list) and len(od) == 2 and all(isinstance(x, int) for x in od)):
78+
if od and not (
79+
isinstance(od, list) and len(od) == 2 and all(isinstance(x, int) for x in od)
80+
):
7481
logger.warning("setting trace_od should be a list of length 2, but was %s" % od)
7582
od = None
7683

@@ -79,11 +86,11 @@ def trace_od(settings):
7986

8087
@inject.injectable(cache=True)
8188
def chunk_size(settings):
82-
_chunk_size = int(settings.get('chunk_size', 0) or 0)
89+
_chunk_size = int(settings.get("chunk_size", 0) or 0)
8390

8491
return _chunk_size
8592

8693

8794
@inject.injectable(cache=True)
8895
def check_for_variability(settings):
89-
return bool(settings.get('check_for_variability', False))
96+
return bool(settings.get("check_for_variability", False))

activitysim/abm/models/__init__.py

Lines changed: 40 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,42 @@
11
# ActivitySim
22
# See full license in LICENSE.txt.
3-
from . import accessibility
4-
from . import atwork_subtour_destination
5-
from . import atwork_subtour_frequency
6-
from . import atwork_subtour_mode_choice
7-
from . import atwork_subtour_scheduling
8-
from . import auto_ownership
9-
from . import cdap
10-
from . import free_parking
11-
from . import initialize
12-
from . import initialize_tours
13-
from . import initialize_los
14-
from . import joint_tour_composition
15-
from . import joint_tour_destination
16-
from . import joint_tour_frequency
17-
from . import joint_tour_participation
18-
from . import joint_tour_scheduling
19-
from . import location_choice
20-
from . import mandatory_scheduling
21-
from . import mandatory_tour_frequency
22-
from . import non_mandatory_destination
23-
from . import non_mandatory_scheduling
24-
from . import non_mandatory_tour_frequency
25-
from . import parking_location_choice
26-
from . import stop_frequency
27-
from . import tour_mode_choice
28-
from . import tour_od_choice
29-
from . import tour_scheduling_probabilistic
30-
from . import trip_destination
31-
from . import trip_mode_choice
32-
from . import trip_purpose
33-
from . import trip_purpose_and_destination
34-
from . import trip_scheduling
35-
from . import trip_departure_choice
36-
from . import trip_scheduling_choice
37-
from . import trip_matrices
38-
from . import summarize
3+
from . import (
4+
accessibility,
5+
atwork_subtour_destination,
6+
atwork_subtour_frequency,
7+
atwork_subtour_mode_choice,
8+
atwork_subtour_scheduling,
9+
auto_ownership,
10+
cdap,
11+
free_parking,
12+
initialize,
13+
initialize_los,
14+
initialize_tours,
15+
joint_tour_composition,
16+
joint_tour_destination,
17+
joint_tour_frequency,
18+
joint_tour_participation,
19+
joint_tour_scheduling,
20+
location_choice,
21+
mandatory_scheduling,
22+
mandatory_tour_frequency,
23+
non_mandatory_destination,
24+
non_mandatory_scheduling,
25+
non_mandatory_tour_frequency,
26+
parking_location_choice,
27+
stop_frequency,
28+
summarize,
29+
tour_mode_choice,
30+
tour_od_choice,
31+
tour_scheduling_probabilistic,
32+
trip_departure_choice,
33+
trip_destination,
34+
trip_matrices,
35+
trip_mode_choice,
36+
trip_purpose,
37+
trip_purpose_and_destination,
38+
trip_scheduling,
39+
trip_scheduling_choice,
40+
vehicle_allocation,
41+
vehicle_type_choice,
42+
)

0 commit comments

Comments
 (0)