-
- Notifications
You must be signed in to change notification settings - Fork 19.2k
Closed
Labels
CleanInternalsRelated to non-user accessible pandas implementationRelated to non-user accessible pandas implementationMaster TrackerHigh level tracker for similar issuesHigh level tracker for similar issues
Description
Misc:
- Timestamp.replace should support
foldkwarg. ATM the kwarg exists but is ignored. - Timestamp constructor should accept nanosecond kwarg (ENH: Timestamp constructor does not accept nanosecond arg #18898) (closed by ENH: Allow Timestamp to accept Nanosecond argument #19889)
Refactoring:
- move
_nat_stringsand_checknull_with_natto a single canonical location - put
OutOfBoundsDatetimeErrorin a dependency-free util-like module. (Implement npy_dtime.pyx #17805) - Possible redundancy between
parse_datetime_stringandparse_time_stringupdate not redundant. - De-privatize names in
tslibs.parsing -
cython version of compat for string_types, StringIO - Don't import DateParseError in tslib
- de-privatize nattype._checknull_with_nat (closed by Cross off a few tslibs-TODOs #18443)
Check if these need to be exposed or (in some cases) need to exist:
-
_Period._comparables(closed by Cross off a few tslibs-TODOs #18443) -
Timedelta._validate_ops_compat -
Timedelta._binary_op_method_timedeltalike -
Timedelta._op_unary_method -
update Won't fix/correct-as-isTimedelta._round -
update Won't fix/correct-as-isTimestamp._round -
update Won't fix/correct-as-is_Timestamp._get_field -
_Timestamp._get_named_field -
update Won't fix/correct-as-is_Timestamp._get_start_end_field -
lib.arrmap(closed by Cross off a few tslibs-TODOs #18443) -
_libs.src.numpy_helper.infer_type
TZ Conversion:
-
tslib._localize_tsoappears to make a handful of unnecessary calls, see localize_tso unnecessary calls? #17944 - Is it the case that
tslib._localize_tsoargument obj will always haveobj.tzinfo == None? This is the case in all existing usages. - Inconsistency between tz_convert and tz_convert_single Inconsistency in tz_convert_single? #17734
Offsets:
-
normalizeattr should be relevant for__eq__BUG: offsets normalize and __eq__ #17689 (closed by fix DateOffset eq to depend on normalize attr #21404) - update docstrings
- Track down meaning behind comment
# I suspect this is wrong for *all* of them.inBQuarterBegin.
Timestamp Methods (moved from #17876)-
- Timestamp classmethods should return cls, not hard-coded Timestamp
-
... if and only if is_timestamp is updated to recognized subclasses. - NaT / timedelta should behave like NaT / Timedelta nat division by timedelta #17955
-
_assert_tzawareness_compat doesn't actually return the declared return typeupdate but declaring it as void leads to build-time error because that mis-matches theexcept? -1 - Add timestamp method+test; closes #17329 #17906 implements
Timestamp.timestampasround(self.value / 1e9, 6)for consistency withdatetimemethod. Are we sure we want to drop nanosecond information? Might it be better to updateutcfromtimestampfor round-trip internal consistency? - Timestamp.replace should handle freq Timestamp.replace should take freq kwarg #18544
- Timestamp.replace should handle DST gracefully Timestamp.replace should handle DST transition gracefully #18319 (closed by handle DST appropriately in Timestamp.replace #18618)
Follow-Up Cleanup:
- Fix camelCase naming in offsets
- docstrings for Timestamp.utcnow, utcfromtimestamp, fromtimestamp, combine
- ci/lint.sh stricter with pyx files
- simplify/correct NaT docstrings
- de-privatize
_get_rule_month -
Possibly removeupdate unique_deltas does appear to be more performant than the alternatives.unique_deltas, asv etc Tslibs resolution #18034 (comment) - add types, docstrings, de-privatize in some cases in tslibs.frequencies Move frequencies functions to cython #17746 (comment), Move frequencies functions to cython #17746 (comment)
- docstring for tslibs.resolution.resolution
- consider renaming is_null_datetimelike --> checknull_datetimelike (implement libmissing; untangles _libs dependencies #18357 (comment)) (2021-12-07 is_null_datetimelike has been removed)
- check for unit already PANDAS_FR_ns in conversion.ensure_datetime64ns
- Remove
#noqad unused imports
Decision Making
- Have
NaTnot subclassdatetime? - Wrap
datetime.datewithTimestamp? Or possible treat it asPeriod(..., freq="D")? COMPAT: datetime.date comparisons with datetime64[ns] #17965 - Make Resolution singleton or use instance or [...]. See Tslibs resolution #18034.
- Consider making Timestamp.replace raise instead of returning an imaginary time (handle DST appropriately in Timestamp.replace #18618 (comment))
Issues:
- check if BUG:
to_timedeltaoverflows without raising in some very particular cases #17037 is handled by BUG: overflow on Timedelta construction & arithmetic now raises #17640 Update It is not.
Questions:
- Shouldn't
pd.Period('2017').daybeNoneinstead of 31? high-freq properties of low-freq Periods #18378
Unsorted
- Build warnings for timedeltastruct implement libmissing; untangles _libs dependencies #18357 (comment) (closed by Cross off a few tslibs-TODOs #18443)
- Ween off of dateutil internals, specifically import of _timelex in tslibs.parsing.
- Period tests for
__sub__with datetimelike check for datetime+period addition #18524 (comment) - Fix missing
tzarg in WIP: Pass missing tz arg in _parsed_string_to_bounds #18471. - Make sure we aren't comparing
tzinfo1 == tzinfo2as that may be misleading for pytz - investigate why an "extra layer" is needed in np_datetime.cstring_to_dts
- docstrings for np_datetime._string_to_dts, cstring_to_dts
- de-privatize frequencies._MONTH_NUMBERS etc, mismatch _MONTHS vs MONTHS
Low Priority:
- Set
seen_datetimeconsistently in array_to_datetime array_to_datetime set seen_datetime consistently #18554
Metadata
Metadata
Assignees
Labels
CleanInternalsRelated to non-user accessible pandas implementationRelated to non-user accessible pandas implementationMaster TrackerHigh level tracker for similar issuesHigh level tracker for similar issues