# [PyGMT v0.4.0 released](https://forum.generic-mapping-tools.org/t/pygmt-v0-4-0-released)
**Announcing [PyGMT v0.4.0](https://github.com/GenericMappingTools/pygmt/releases/tag/v0.4.0), covering 10 new PyGMT functions and methods!**
The PyGMT team is pleased to present version [v0.4.0](https://www.pygmt.org/v0.4.0), a release with 6 new gallery examples, 2 new tutorials, an improved contributors guide, numerous bug fixes, and much more! The highlights for this release include:
* Added tutorials for plotting datetime data ([#1193](https://github.com/GenericMappingTools/pygmt/pull/1193)) and vectors ([#1070](https://github.com/GenericMappingTools/pygmt/pull/1070))
* Support tab auto-completion in Jupyter ([#1282](https://github.com/GenericMappingTools/pygmt/pull/1282))
* Minimum required GMT version is now 6.2.0 or newer ([#1321](https://github.com/GenericMappingTools/pygmt/pull/1321))
The full list of changes can be found in the [changelog](https://www.pygmt.org/v0.4.0/changes.html#release-v0-4-0-2021-06-20). Installation/Upgrade instructions can be found at https://www.pygmt.org/v0.4.0/install.html, or you can try it online first at [try-gmt](https://github.com/GenericMappingTools/try-gmt)! A big shout out to [@noorbuchi](https://github.com/noorbuchi), [@cklima616](https://github.com/cklima616), [@munzekm](https://github.com/munzekm), and [@Nathandloria](https://github.com/Nathandloria) from Allegheny College for making two cool tutorials for [plotting datetime data](https://www.pygmt.org/v0.4.0/tutorials/date_time_charts.html) and [vectors](https://www.pygmt.org/v0.4.0/tutorials/vectors.html). Cheers to [@eemcmullan](https://github.com/eemcmullan) for adding examples for the three oblique mercator projections ([1](https://www.pygmt.org/v0.4.0/projections/cyl/cyl_oblique_mercator_1.html), [2](https://www.pygmt.org/v0.4.0/projections/cyl/cyl_oblique_mercator_2.html), and [3](https://www.pygmt.org/v0.4.0/projections/cyl/cyl_oblique_mercator_3.html)). Thank you also to [@itsabhianant](https://github.com/itsabhianant), [@MichaeINeumann](https://github.com/MichaeINeumann), [@xdshivani](https://github.com/xdshivani), [@alperen-kilic](https://github.com/alperen-kilic), [@Lawqup](https://github.com/Lawqup), [@mdtanker](https://github.com/mdtanker), [@shahid-0](https://github.com/shahid-0), and [@vitorgt]([https://github.com/aliciaha1997](https://github.com/vitorgt)) for some improvements and quick fixes to our documentation; we appreciate all contributions be it big or small and welcome new contributors to PyGMT :smile:!
[![Gallery in PyGMT v0.4.0](https://i.imgur.com/ysZbznJ.png)](https://www.pygmt.org/v0.4.0/gallery/index.html)
### :sparkles: New Features
One thing we sneaked in is support for plotting :globe_with_meridians: [geopandas Data Structures](https://geopandas.readthedocs.io/en/latest/docs/user_guide/data_structures.html#data-structures) (e.g. a [geopandas.GeoDataFrame](https://geopandas.readthedocs.io/en/latest/docs/user_guide/data_structures.html#geodataframe)) directly with PyGMT, though this is not well documented yet (but see [#608](https://github.com/GenericMappingTools/pygmt/issues/608)). Other than that, there are plenty of new functions this time around such as:
- [blockmean](https://www.pygmt.org/v0.4.0/api/generated/pygmt.blockmean.html) for block averaging data tables by @meghanj
- [rose](https://www.pygmt.org/v0.4.0/api/generated/pygmt.Figure.rose.html) for plotting [polar histogram and windrose diagrams](https://www.pygmt.org/dev/gallery/histograms/rose.html#sphx-glr-gallery-histograms-rose-py) by [@michaelgrund](https://github.com/michaelgrund)
- [velo](https://www.pygmt.org/v0.4.0/api/generated/pygmt.Figure.velo.html) for plotting [velocity arrows and confidence ellipses](https://www.pygmt.org/v0.4.0/gallery/seismology/velo_arrow_ellipse.html) by [@lhoupert](https://github.com/lhoupert)
- [wiggle](https://www.pygmt.org/v0.4.0/api/generated/pygmt.Figure.wiggle.html) for plotting [anomalies along tracks](https://www.pygmt.org/v0.4.0/gallery/lines/wiggle.html) by @core-man
- Several grd* functions by @willschlitzer!
All of this wouldn't be possible without our great crew of PyGMT developers :man_technologist::woman_technologist: - @seisman, @weiji14, [@michaelgrund](https://github.com/michaelgrund), @meghanj, @willschlitzer, and @core-man. Also a big thank you to @pwessel and the core GMT team for fixing bugs :bug: and pushing out the [GMT 6.2.0 release](https://forum.generic-mapping-tools.org/t/gmt-6-2-0-released/1757)!
### :railway_track: Roadmap to [v0.5.0](https://github.com/GenericMappingTools/pygmt/milestone/8)
For the next minor release, here are some things we have planned (many of which we need help with!):
- :globe_with_meridians: + :snake: [Design a fresh new PyGMT logo!](https://forum.generic-mapping-tools.org/t/design-for-pygmt-logo/1346)
- Integration with ObsPy :snake: to process seismological data ([#967](https://github.com/GenericMappingTools/pygmt/issues/967))
- Add a beginner :beginner: friendly PyGMT tutorial that is a good roadmap for new GMT/PyGMT users ([#770](https://github.com/GenericMappingTools/pygmt/issues/770))
- More features/enhancements :sparkles::
- Allow passing in a list/array of angle/font/justify values to text ([#483](https://github.com/GenericMappingTools/pygmt/issues/483))
- Wrap more GMT modules, e.g., xyz2grd ([#636](https://github.com/GenericMappingTools/pygmt/pull/636)) and triangulate ([#731](https://github.com/GenericMappingTools/pygmt/pull/731))
- Add `Figure.hlines()` and `Figure.vlines()` for plotting horizontal and vertical lines ([#670](https://github.com/GenericMappingTools/pygmt/issues/670))
### :warning: Upcoming deprecations
No one likes software that breaks. To ensure a bug-free product and consistency, these are some of the deprecations coming up for future releases of PyGMT:
- v0.5.0 - [NEP29](https://numpy.org/neps/nep-0029-deprecation_policy.html#support-table): drop support for NumPy 1.17 so that NumPy 1.18 or above is required
- v0.6.0 - Aliases "columns" and "sizes" are replaced by "incols" and "size" respectively (a FutureWarning is raised in PyGMT v0.4.0)
- v1.0.0 (?) - Short form aliases (e.g. 'R') will not work if long form aliases (e.g. 'region') are available (a SyntaxWarning is raised in PyGMT v0.4.0, see [#1316](https://github.com/GenericMappingTools/pygmt/pull/1316))
The compatibility matrix will be listed on https://www.pygmt.org/v0.4.0/#compatibility-with-python-and-gmt-versions, so make sure you keep things up to date!
### :world_map: Community events
We're doing a few outreach events in the second half of the year, and welcome people to take part!
- :snake: [PyGMT Sprint at SciPy 2021](https://www.scipy2021.scipy.org/sprints) (17-18 Jul 2021) - the sprint proposal has been submitted and we welcome people to get involved during the sprint and with creating good issues in the next few weeks
- :two_women_holding_hands: [Earth Science Women's Network Developer workshop](https://eswnonline.org/29375-2) (17-19 Aug 2021) - registrations has closed, and further announcements will be made in early July.
- :earth_americas: [AGU 2021 sessions](https://forum.generic-mapping-tools.org/t/agu-2021-abstract-s/1803) (13-17 Dec 2021), abstracts due 4 Aug 2021!
If you have time, feel free to reach out to the PyGMT team during those events! We have quarterly PyGMT community meetings (see the last one in [mid June 2021](https://forum.generic-mapping-tools.org/t/pygmt-community-zoom-meeting-tuesday-15-june-2021-utc-1700)), and are active on this [forum](https://forum.generic-mapping-tools.org/c/questions/pygmt-q-a) and [GitHub](https://github.com/GenericMappingTools/pygmt) too. That's all for now :smile:
Enjoy :partying_face:
**P.S.** Feel free to share the word on twitter :bird:, #PyGMT [@gmt_dev](https://twitter.com/gmt_dev)!