<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/gitlab.git/gitlab/base.py, branch v3.0.0</title>
<subtitle>github.com: gpocentek/python-gitlab.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/gitlab.git/'/>
<entry>
<title>fix: handle situation where GitLab does not return values</title>
<updated>2021-12-30T20:34:50+00:00</updated>
<author>
<name>John L. Villalovos</name>
<email>john@sodarock.com</email>
</author>
<published>2021-12-30T20:34:50+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/gitlab.git/commit/?id=cb824a49af9b0d155b89fe66a4cfebefe52beb7a'/>
<id>cb824a49af9b0d155b89fe66a4cfebefe52beb7a</id>
<content type='text'>
If a query returns more than 10,000 records than the following values
are NOT returned:
  x.total_pages
  x.total

Modify the code to allow no value to be set for these values. If there
is not a value returned the functions will now return None.

Update unit test so no longer `xfail`

https://docs.gitlab.com/ee/user/gitlab_com/index.html#pagination-response-headers

Closes #1686
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If a query returns more than 10,000 records than the following values
are NOT returned:
  x.total_pages
  x.total

Modify the code to allow no value to be set for these values. If there
is not a value returned the functions will now return None.

Update unit test so no longer `xfail`

https://docs.gitlab.com/ee/user/gitlab_com/index.html#pagination-response-headers

Closes #1686
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #1709 from python-gitlab/docs/sphinx-annotations</title>
<updated>2021-12-01T06:35:42+00:00</updated>
<author>
<name>Nejc Habjan</name>
<email>hab.nejc@gmail.com</email>
</author>
<published>2021-12-01T06:35:42+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/gitlab.git/commit/?id=2708f91d6f763ab02bdd24262892be66fa33390d'/>
<id>2708f91d6f763ab02bdd24262892be66fa33390d</id>
<content type='text'>
docs: only use type annotations for documentation</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
docs: only use type annotations for documentation</pre>
</div>
</content>
</entry>
<entry>
<title>chore: attempt to be more informative for missing attributes</title>
<updated>2021-11-30T16:35:58+00:00</updated>
<author>
<name>John L. Villalovos</name>
<email>john@sodarock.com</email>
</author>
<published>2021-11-30T16:35:58+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/gitlab.git/commit/?id=1839c9e7989163a5cc9a201241942b7faca6e214'/>
<id>1839c9e7989163a5cc9a201241942b7faca6e214</id>
<content type='text'>
A commonly reported issue from users on Gitter is that they get an
AttributeError for an attribute that should be present. This is often
caused due to the fact that they used the `list()` method to retrieve
the object and objects retrieved this way often only have a subset of
the full data.

Add more details in the AttributeError message that explains the
situation to users. This will hopefully allow them to resolve the
issue.

Update the FAQ in the docs to add a section discussing the issue.

Closes #1138
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A commonly reported issue from users on Gitter is that they get an
AttributeError for an attribute that should be present. This is often
caused due to the fact that they used the `list()` method to retrieve
the object and objects retrieved this way often only have a subset of
the full data.

Add more details in the AttributeError message that explains the
situation to users. This will hopefully allow them to resolve the
issue.

Update the FAQ in the docs to add a section discussing the issue.

Closes #1138
</pre>
</div>
</content>
</entry>
<entry>
<title>docs: only use type annotations for documentation</title>
<updated>2021-11-28T17:31:59+00:00</updated>
<author>
<name>Nejc Habjan</name>
<email>hab.nejc@gmail.com</email>
</author>
<published>2021-11-24T19:52:28+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/gitlab.git/commit/?id=b7dde0d7aac8dbaa4f47f9bfb03fdcf1f0b01c41'/>
<id>b7dde0d7aac8dbaa4f47f9bfb03fdcf1f0b01c41</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>chore: fix issue with adding type-hints to 'manager' attribute</title>
<updated>2021-11-22T06:37:56+00:00</updated>
<author>
<name>John L. Villalovos</name>
<email>john@sodarock.com</email>
</author>
<published>2021-11-22T06:35:34+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/gitlab.git/commit/?id=9a451a892d37e0857af5c82c31a96d68ac161738'/>
<id>9a451a892d37e0857af5c82c31a96d68ac161738</id>
<content type='text'>
When attempting to add type-hints to the the 'manager' attribute into
a RESTObject derived class it would break things.

This was because our auto-manager creation code would automatically
add the specified annotated manager to the 'manager' attribute. This
breaks things.

Now check in our auto-manager creation if our attribute is called
'manager'. If so we ignore it.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When attempting to add type-hints to the the 'manager' attribute into
a RESTObject derived class it would break things.

This was because our auto-manager creation code would automatically
add the specified annotated manager to the 'manager' attribute. This
breaks things.

Now check in our auto-manager creation if our attribute is called
'manager'. If so we ignore it.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor: use new-style formatting for named placeholders</title>
<updated>2021-11-08T22:11:40+00:00</updated>
<author>
<name>Nejc Habjan</name>
<email>hab.nejc@gmail.com</email>
</author>
<published>2021-11-05T20:01:58+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/gitlab.git/commit/?id=c0d881064f7c90f6a510db483990776ceb17b9bd'/>
<id>c0d881064f7c90f6a510db483990776ceb17b9bd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor: use f-strings for string formatting</title>
<updated>2021-11-06T03:45:01+00:00</updated>
<author>
<name>Nejc Habjan</name>
<email>hab.nejc@gmail.com</email>
</author>
<published>2021-11-01T18:22:18+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/gitlab.git/commit/?id=7925c902d15f20abaecdb07af213f79dad91355b'/>
<id>7925c902d15f20abaecdb07af213f79dad91355b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>docs: fix a few typos</title>
<updated>2021-09-18T20:34:18+00:00</updated>
<author>
<name>Tim Gates</name>
<email>tim.gates@iress.com</email>
</author>
<published>2021-09-15T22:24:47+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/gitlab.git/commit/?id=7ea4ddc4248e314998fd27eea17c6667f5214d1d'/>
<id>7ea4ddc4248e314998fd27eea17c6667f5214d1d</id>
<content type='text'>
There are small typos in:
- docs/gl_objects/deploy_tokens.rst
- gitlab/base.py
- gitlab/mixins.py
- gitlab/v4/objects/features.py
- gitlab/v4/objects/groups.py
- gitlab/v4/objects/packages.py
- gitlab/v4/objects/projects.py
- gitlab/v4/objects/sidekiq.py
- gitlab/v4/objects/todos.py

Fixes:
- Should read `treatment` rather than `reatment`.
- Should read `transferred` rather than `transfered`.
- Should read `registered` rather than `registred`.
- Should read `occurred` rather than `occured`.
- Should read `overridden` rather than `overriden`.
- Should read `marked` rather than `maked`.
- Should read `instantiate` rather than `instanciate`.
- Should read `function` rather than `fonction`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There are small typos in:
- docs/gl_objects/deploy_tokens.rst
- gitlab/base.py
- gitlab/mixins.py
- gitlab/v4/objects/features.py
- gitlab/v4/objects/groups.py
- gitlab/v4/objects/packages.py
- gitlab/v4/objects/projects.py
- gitlab/v4/objects/sidekiq.py
- gitlab/v4/objects/todos.py

Fixes:
- Should read `treatment` rather than `reatment`.
- Should read `transferred` rather than `transfered`.
- Should read `registered` rather than `registred`.
- Should read `occurred` rather than `occured`.
- Should read `overridden` rather than `overriden`.
- Should read `marked` rather than `maked`.
- Should read `instantiate` rather than `instanciate`.
- Should read `function` rather than `fonction`.
</pre>
</div>
</content>
</entry>
<entry>
<title>chore: convert to using type-annotations for managers</title>
<updated>2021-09-08T14:18:48+00:00</updated>
<author>
<name>John L. Villalovos</name>
<email>john@sodarock.com</email>
</author>
<published>2021-06-13T21:40:46+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/gitlab.git/commit/?id=d8de4dc373dc608be6cf6ba14a2acc7efd3fa7a7'/>
<id>d8de4dc373dc608be6cf6ba14a2acc7efd3fa7a7</id>
<content type='text'>
Convert our manager usage to be done via type annotations.

Now to define a manager to be used in a RESTObject subclass can simply
do:
      class ExampleClass(CRUDMixin, RESTObject):
          my_manager: MyManager

Any type-annotation that annotates it to be of type *Manager (with the
exception of RESTManager) will cause the manager to be created on the
object.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Convert our manager usage to be done via type annotations.

Now to define a manager to be used in a RESTObject subclass can simply
do:
      class ExampleClass(CRUDMixin, RESTObject):
          my_manager: MyManager

Any type-annotation that annotates it to be of type *Manager (with the
exception of RESTManager) will cause the manager to be created on the
object.
</pre>
</div>
</content>
</entry>
<entry>
<title>chore: improve type-hinting for managers</title>
<updated>2021-09-07T15:19:39+00:00</updated>
<author>
<name>John L. Villalovos</name>
<email>john@sodarock.com</email>
</author>
<published>2021-06-12T22:05:36+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/gitlab.git/commit/?id=c9b5d3bac8f7c1f779dd57653f718dd0fac4db4b'/>
<id>c9b5d3bac8f7c1f779dd57653f718dd0fac4db4b</id>
<content type='text'>
The 'managers' are dynamically created. This unfortunately means that
we don't have any type-hints for them and so editors which understand
type-hints won't know that they are valid attributes.

 * Add the type-hints for the managers we define.
 * Add a unit test that makes sure that the type-hints and the
   '_managers' attribute are kept in sync with each other.
 * Add unit test that makes sure specified managers in '_managers'
   have a name ending in 'Managers' to keep with current convention.
 * Make RESTObject._managers always present with a default value of
   None.
 * Fix a type-issue revealed now that mypy knows what the type is
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The 'managers' are dynamically created. This unfortunately means that
we don't have any type-hints for them and so editors which understand
type-hints won't know that they are valid attributes.

 * Add the type-hints for the managers we define.
 * Add a unit test that makes sure that the type-hints and the
   '_managers' attribute are kept in sync with each other.
 * Add unit test that makes sure specified managers in '_managers'
   have a name ending in 'Managers' to keep with current convention.
 * Make RESTObject._managers always present with a default value of
   None.
 * Fix a type-issue revealed now that mypy knows what the type is
</pre>
</div>
</content>
</entry>
</feed>
