Skip to content

Inconsistent documentation of tell/seek on textiobase/textiowrapper #82969

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
qha mannequin opened this issue Nov 13, 2019 · 3 comments
Closed

Inconsistent documentation of tell/seek on textiobase/textiowrapper #82969

qha mannequin opened this issue Nov 13, 2019 · 3 comments
Labels
3.8 (EOL) end of life stdlib Python modules in the Lib dir topic-IO

Comments

@qha
Copy link
Mannequin

qha mannequin commented Nov 13, 2019

BPO 38788
Nosy @terryjreedy, @qha

Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

Show more details

GitHub fields:

assignee = None
closed_at = None
created_at = <Date 2019-11-13.14:36:28.180>
labels = ['3.8', 'library']
title = 'Inconsistent documentation of tell/seek on textiobase/textiowrapper'
updated_at = <Date 2019-11-15.20:28:43.659>
user = 'https://github.com/qha'

bugs.python.org fields:

activity = <Date 2019-11-15.20:28:43.659>
actor = 'terry.reedy'
assignee = 'none'
closed = False
closed_date = None
closer = None
components = ['Library (Lib)']
creation = <Date 2019-11-13.14:36:28.180>
creator = 'qha'
dependencies = []
files = []
hgrepos = []
issue_num = 38788
keywords = []
message_count = 1.0
messages = ['356534']
nosy_count = 2.0
nosy_names = ['terry.reedy', 'qha']
pr_nums = []
priority = 'normal'
resolution = None
stage = None
status = 'open'
superseder = None
type = None
url = 'https://bugs.python.org/issue38788'
versions = ['Python 3.8']

@qha
Copy link
Mannequin Author

qha mannequin commented Nov 13, 2019

The class hierarchy suggests the only tell/seek implementations one
needs to look up are in iobase and those have the semantics i was
expecting:
https://docs.python.org/3.8/library/io.html#class-hierarchy

Plowing on one might discover that there are separate implementations
of tell/seek for textiobase whose documentation probably explains the
unexpected values tell returns.

The documentation for tell available from the help() command still
reflects the semantics i was expecting.

The documentation for seek available from the help() command still
reflects the semantics i was expecting. It does however suggest that
the first argument has been renamed from offset to cookie which the
online documentation has not yet caught up to at:
https://docs.python.org/3.8/library/io.html#io.TextIOBase.seek

The documentation body for seek from the help() command still refers to
offset though there is now no argument of that name.

>>> help(fh.tell)
Help on built-in function tell:

tell() method of _io.TextIOWrapper instance
Return current stream position.

>>> help(fh.seek)
Help on built-in function seek:

seek(cookie, whence=0, /) method of _io.TextIOWrapper instance
Change stream position.

Change the stream position to the given byte offset. The offset is
interpreted relative to the position indicated by whence.  Values
for whence are:

* 0 -- start of stream (the default); offset should be zero or positive
* 1 -- current stream position; offset may be negative
* 2 -- end of stream; offset is usually negative

Return the new absolute position.

@qha qha mannequin added 3.8 (EOL) end of life stdlib Python modules in the Lib dir labels Nov 13, 2019
@ezio-melotti ezio-melotti transferred this issue from another repository Apr 10, 2022
@serhiy-storchaka
Copy link
Member

Closed as a duplicate of newer issue #107801 which has more activity.

@erlend-aasland
Copy link
Contributor

Closed as a duplicate of newer issue #107801 which has more activity.

+1

@erlend-aasland erlend-aasland closed this as not planned Won't fix, can't repro, duplicate, stale Oct 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3.8 (EOL) end of life stdlib Python modules in the Lib dir topic-IO
Projects
None yet
Development

No branches or pull requests

2 participants