(*11 November 2020*)
**Notable [changes](https://github.com/mikeqfu/pyrcs/compare/0.2.11...0.2.12) since [0.2.11](https://pypi.org/project/pyrcs/0.2.11/):**
- Enabled an offline mode (when Internet connection is lost).
- Renamed the following:
- class methods:
- in the class [SignalBoxes](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/other_assets/sig_box.py#L28):
- [~~.collect_signal_box_prefix_codes()~~](https://github.com/mikeqfu/pyrcs/commit/8996f89566f53b4d2e24d8f99b1e0b0444ee0b40#diff-325f75b3f2452c2629af384b19046b16d42d4500c6cba2ca5cf0db5fc0772f4bL99) to [.collect_prefix_codes()](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/other_assets/sig_box.py#L107);
- [~~.fetch_signal_box_prefix_codes()~~](https://github.com/mikeqfu/pyrcs/commit/8996f89566f53b4d2e24d8f99b1e0b0444ee0b40#diff-325f75b3f2452c2629af384b19046b16d42d4500c6cba2ca5cf0db5fc0772f4bL188) to [.fetch_prefix_codes()](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/other_assets/sig_box.py#L203);
- in the class [Tunnels](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/other_assets/tunnel.py#L27):
- [~~.collect_tunnel_lengths_by_page()~~](https://github.com/mikeqfu/pyrcs/commit/a2df5ad0f6d6a8758a9f0ac122487f09a1ec0a61#diff-d4156e818eca514e7b6c1b2bfbf2ac0a4a1ee2392a31b56a2c5771e87fae14c1L167) to [.collect_lengths_by_page()](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/other_assets/tunnel.py#L177);
- in the class [Viaducts](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/other_assets/viaduct.py#L23):
- [~~.collect_railway_viaducts_by_page()~~](https://github.com/mikeqfu/pyrcs/commit/aa5325bc12b84b0f18ef39548efc1f7d268d5347#diff-f4e1105c5b49529eafc015218cb58dc9b9483837fb76542988186546b44745efL82) to [.collect_viaduct_codes_by_page()](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/other_assets/viaduct.py#L99);
- [~~.fetch_railway_viaducts()~~](https://github.com/mikeqfu/pyrcs/commit/aa5325bc12b84b0f18ef39548efc1f7d268d5347#diff-f4e1105c5b49529eafc015218cb58dc9b9483837fb76542988186546b44745efL151) to [.fetch_viaduct_codes()](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/other_assets/viaduct.py#L177);
- functions in the module [utils](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/utils.py):
- [~~fetch_location_names_repl_dict()~~](https://github.com/mikeqfu/pyrcs/commit/e923c3780a5f8dbe856f0d19a87fb09cd3ae7315#diff-b10b1cca28c0fc2ed0bdb1f92c3c9f58dcc4279b09ad28a2a4c513a35861c282L952) to [fetch_loc_names_repl_dict()](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/utils.py#L1037);
- [~~update_location_name_repl_dict()~~](https://github.com/mikeqfu/pyrcs/commit/e923c3780a5f8dbe856f0d19a87fb09cd3ae7315#diff-b10b1cca28c0fc2ed0bdb1f92c3c9f58dcc4279b09ad28a2a4c513a35861c282L1009) to [update_loc_names_repl_dict()](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/utils.py#L1094).
- Removed the functions [~~collect_site_map()~~](https://github.com/mikeqfu/pyrcs/commit/5a9b983ea55c22edf04fe4be1711b6ded7a3eccc#diff-4fe83da7eb97d70cc844349191441cf8ecb65e67ee655989e774a44c2cd4eb6dL20) and [~~fetch_site_map()~~](https://github.com/mikeqfu/pyrcs/commit/5a9b983ea55c22edf04fe4be1711b6ded7a3eccc#diff-4fe83da7eb97d70cc844349191441cf8ecb65e67ee655989e774a44c2cd4eb6dL110) from the module [updater](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/updater.py).
- Added the following:
- a new module [collector](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/collector.py) - combining two modules [~~_line_data~~](https://github.com/mikeqfu/pyrcs/commit/ac477c9dc6d76a7400ffcf9d031ffd545d662fac#diff-51811be1398d2439ca84a8504b8531b0411773c357881c423df0922f44e6923b) and [~~_other_assets~~](https://github.com/mikeqfu/pyrcs/commit/ac477c9dc6d76a7400ffcf9d031ffd545d662fac#diff-b7304475ca50edd2572798e94bb2d0d5e2f627c6f5470d1ad24722efdb803609);
- new functions [print_connection_error()](https://github.com/mikeqfu/pyrcs/commit/2886648b04174692ff0be58183ec56da27d1c120#diff-b10b1cca28c0fc2ed0bdb1f92c3c9f58dcc4279b09ad28a2a4c513a35861c282R1192-R1205), [print_conn_err()](https://github.com/mikeqfu/pyrcs/commit/b42f0e36a5f231763fd8879c3e50f2e83ca000c4#diff-b10b1cca28c0fc2ed0bdb1f92c3c9f58dcc4279b09ad28a2a4c513a35861c282R1206-R1225), [is_internet_connected()](https://github.com/mikeqfu/pyrcs/commit/03486c21048282d9033bda915924a70f1033645e#diff-b10b1cca28c0fc2ed0bdb1f92c3c9f58dcc4279b09ad28a2a4c513a35861c282R1262-R1283) and [get_site_map()](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/utils.py#L631) to the module [utils](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/utils.py);
- a new method [TrackDiagrams.get_track_diagrams_items()](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/line_data/trk_diagr.py#L85) - adapted from the function [~~get_track_diagrams_items()~~](https://github.com/mikeqfu/pyrcs/commit/0216bf07d00769f08a6a7e09c6a0a08a42c5fb56#diff-3bd1279c5db5b09065ddf6468e4acfb650e3402d8b0c410ce7beaacb667a8135R78) previously in the module [utils](https://github.com/mikeqfu/pyrcs/blob/bb66ee658a2b60e2ffe5e16381e8737b57c65b3d/pyrcs/utils.py).
- Enabled direct access to all classes from importing the package, without having to specifying the sub-modules in which they each reside.
**For more information and detailed specifications, check out [PyRCS 0.2.12 documentation](https://pyrcs.readthedocs.io/en/0.2.12/).**
<br/>