<feed xmlns='http://www.w3.org/2005/Atom'>
<title>PROJ/src/PJ_healpix.c, branch 5.1.0</title>
<subtitle>Forked from https://github.com/OSGeo/PROJ</subtitle>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/'/>
<entry>
<title>IWYU: Partial PJ_gstmerc.c..PJ_molodensky.c</title>
<updated>2018-05-15T14:25:25+00:00</updated>
<author>
<name>Kurt Schwehr</name>
<email>schwehr@google.com</email>
</author>
<published>2018-05-15T14:25:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=4080bd2477c76a528394e752ee7796fdf87db07e'/>
<id>4080bd2477c76a528394e752ee7796fdf87db07e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Convert errno literals to corresponding PJD symbol</title>
<updated>2018-05-04T16:01:27+00:00</updated>
<author>
<name>Kurt Schwehr</name>
<email>schwehr@google.com</email>
</author>
<published>2018-05-04T16:01:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=72016ab016efe153f475a38596586fecd5b996d2'/>
<id>72016ab016efe153f475a38596586fecd5b996d2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove 'pj_' prefix from static functions</title>
<updated>2018-03-11T14:28:28+00:00</updated>
<author>
<name>Kristian Evers</name>
<email>kristianevers@gmail.com</email>
</author>
<published>2018-03-11T14:28:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=18d5c0310e5950b88b4a5ddab6c3636e8b10ed77'/>
<id>18d5c0310e5950b88b4a5ddab6c3636e8b10ed77</id>
<content type='text'>
Functions should only be prefixed with 'pj_' when they can be used in
other parts of the code base and not just within a single file.

Takes care of the last step in #675.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Functions should only be prefixed with 'pj_' when they can be used in
other parts of the code base and not just within a single file.

Takes care of the last step in #675.
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove angle brackets for proj headers (#849)</title>
<updated>2018-03-11T12:17:07+00:00</updated>
<author>
<name>Thomas Knudsen</name>
<email>busstoptaktik@users.noreply.github.com</email>
</author>
<published>2018-03-11T12:17:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=ab87b8ef0af7ef888b7d810db610ead6eb784d71'/>
<id>ab87b8ef0af7ef888b7d810db610ead6eb784d71</id>
<content type='text'>
* Avoid using angle brackets for PROJ headers.

Switching from #include &lt;proj.h&gt; to #include "proj.h",
and correspondingly for projects.h and proj_api.h,
reduces the risk of accidentally picking up a system
installed older version of the header while building
a new version of PROJ.

* Also handle geodesic.h
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Avoid using angle brackets for PROJ headers.

Switching from #include &lt;proj.h&gt; to #include "proj.h",
and correspondingly for projects.h and proj_api.h,
reduces the risk of accidentally picking up a system
installed older version of the header while building
a new version of PROJ.

* Also handle geodesic.h
</pre>
</div>
</content>
</entry>
<entry>
<title>Declare non-local variables as const where possible</title>
<updated>2017-12-17T22:34:40+00:00</updated>
<author>
<name>Aaron Puchert</name>
<email>aaron.puchert@sap.com</email>
</author>
<published>2017-11-17T16:46:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=a07501a165e6f2521c9aa13fa63fab33cf67d876'/>
<id>a07501a165e6f2521c9aa13fa63fab33cf67d876</id>
<content type='text'>
Having non-const variables of static lifetime or even global scope is
usually a bad idea. These variables are inherently constants, and this
should be enforced.

This required marking some functions as not modifying input parameters
and marking some pointers as pointers to const.

One advantage is that the compiler usually puts const static variables
in a read-only code segment, so they can't be modified physically.
This can be verified with `nm` (on POSIX systems).

To avoid changes to the public API, functions returning non-const
pointers to data tables were left intact, but the returned data may not
be modified. Internally we prefer using the proj_list_* functions over
the pj_get_*_ref functions, because the former return const pointers.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Having non-const variables of static lifetime or even global scope is
usually a bad idea. These variables are inherently constants, and this
should be enforced.

This required marking some functions as not modifying input parameters
and marking some pointers as pointers to const.

One advantage is that the compiler usually puts const static variables
in a read-only code segment, so they can't be modified physically.
This can be verified with `nm` (on POSIX systems).

To avoid changes to the public API, functions returning non-const
pointers to data tables were left intact, but the returned data may not
be modified. Internally we prefer using the proj_list_* functions over
the pj_get_*_ref functions, because the former return const pointers.
</pre>
</div>
</content>
</entry>
<entry>
<title>Overhaul ellipsoid handling (#682)</title>
<updated>2017-11-25T00:40:37+00:00</updated>
<author>
<name>Thomas Knudsen</name>
<email>busstoptaktik@users.noreply.github.com</email>
</author>
<published>2017-11-25T00:40:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=bea0c8b0c015ef0a5c136b904d63ad7f4a4427bf'/>
<id>bea0c8b0c015ef0a5c136b904d63ad7f4a4427bf</id>
<content type='text'>
Improve error messaging for cct and gie, and do some clean ups in the ellipsoid handling - partially to squash bugs, partially to improve naming consistency which, in turn, improves the readability of the ellipsoid handling code.

Renamed functions:

pj_inherit_ellipsoid_defs has been renamed pj_inherit_ellipsoid_def, while pj_calc_ellps_params has been renamed pj_calc_ellipsoid_params.

The code in get_opt (part of pj_init.c), which handles whether or not an ellipsoid definition should be dragged in from proj_def.dat, has been rewritten. I suspect this was buggy beforehand, and at least the new code is easier to follow (although it may be slightly slower, which is not really a problem as it sits in the setup code, and hence is executed only once).</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Improve error messaging for cct and gie, and do some clean ups in the ellipsoid handling - partially to squash bugs, partially to improve naming consistency which, in turn, improves the readability of the ellipsoid handling code.

Renamed functions:

pj_inherit_ellipsoid_defs has been renamed pj_inherit_ellipsoid_def, while pj_calc_ellps_params has been renamed pj_calc_ellipsoid_params.

The code in get_opt (part of pj_init.c), which handles whether or not an ellipsoid definition should be dragged in from proj_def.dat, has been rewritten. I suspect this was buggy beforehand, and at least the new code is easier to follow (although it may be slightly slower, which is not really a problem as it sits in the setup code, and hence is executed only once).</pre>
</div>
</content>
</entry>
<entry>
<title>Replace pj_ell_set with reimplementation... (#675)</title>
<updated>2017-11-20T12:20:02+00:00</updated>
<author>
<name>Thomas Knudsen</name>
<email>busstoptaktik@users.noreply.github.com</email>
</author>
<published>2017-11-20T12:20:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=5f1522ad7652e562f98328b05d905c407bab99e9'/>
<id>5f1522ad7652e562f98328b05d905c407bab99e9</id>
<content type='text'>
* Replace pj_ell_set with reimplementation supporting ellipsoid inheritance

* remove unreachable code from pj_ell_set.c

* Swap steps, so ellps args are read first, in accordance with historical behaviour

* Add ellipsoid tests to CI targets

* Reduce some optimistic tolerances

OS/X appears to have a slightly off float handling, resulting in differences at the nanometer level. Switching to 10 nm.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Replace pj_ell_set with reimplementation supporting ellipsoid inheritance

* remove unreachable code from pj_ell_set.c

* Swap steps, so ellps args are read first, in accordance with historical behaviour

* Add ellipsoid tests to CI targets

* Reduce some optimistic tolerances

OS/X appears to have a slightly off float handling, resulting in differences at the nanometer level. Switching to 10 nm.
</pre>
</div>
</content>
</entry>
<entry>
<title>Removed remaining traces of the built in selftest system (#661)</title>
<updated>2017-11-12T23:33:40+00:00</updated>
<author>
<name>Thomas Knudsen</name>
<email>busstoptaktik@users.noreply.github.com</email>
</author>
<published>2017-11-12T23:33:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=06b2f944d7844bb898ace8a7973f9182aa2234b1'/>
<id>06b2f944d7844bb898ace8a7973f9182aa2234b1</id>
<content type='text'>
* Removed remaining traces of the builtin selftest system. Moved all functionality to test/gie

* Updated Appveyor and Travis build scripts

* Another appveyor script update
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Removed remaining traces of the builtin selftest system. Moved all functionality to test/gie

* Updated Appveyor and Travis build scripts

* Another appveyor script update
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove selftests from projection files starting with h, i, j, k</title>
<updated>2017-11-12T04:09:03+00:00</updated>
<author>
<name>Thomas Knudsen</name>
<email>thokn@sdfe.dk</email>
</author>
<published>2017-11-12T04:09:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=5b0b6cb8d477a39f3f59a38d0a1968cc9ac9f847'/>
<id>5b0b6cb8d477a39f3f59a38d0a1968cc9ac9f847</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Prevent crashes and leaks on allocation failure (#606)</title>
<updated>2017-10-19T12:04:35+00:00</updated>
<author>
<name>Aaron Puchert</name>
<email>aaronpuchert@alice-dsl.net</email>
</author>
<published>2017-10-19T12:04:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=3ef083767eaf975399243246605fddc40cc097f9'/>
<id>3ef083767eaf975399243246605fddc40cc097f9</id>
<content type='text'>
* Prevent crashes and leaks on allocation failure

Memory allocation can fail. We need to gracefully handle this case and
prevent dereferencing null pointers.

* Make NULL checks consistent within a file

* Properly report allocation errors

* Improve cleanup in pj_gc_reader.c

* Implement pj_strdup and use instead of strdup

The function strdup is not part of ANSI C 89, but a POSIX extension.
Therefore we can not rely on it being available on all platforms.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Prevent crashes and leaks on allocation failure

Memory allocation can fail. We need to gracefully handle this case and
prevent dereferencing null pointers.

* Make NULL checks consistent within a file

* Properly report allocation errors

* Improve cleanup in pj_gc_reader.c

* Implement pj_strdup and use instead of strdup

The function strdup is not part of ANSI C 89, but a POSIX extension.
Therefore we can not rely on it being available on all platforms.
</pre>
</div>
</content>
</entry>
</feed>
