-
-
Notifications
You must be signed in to change notification settings - Fork 46
Remove backward compatibility and change package structure to pandas_ta_classic #2
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
Conversation
Co-authored-by: xgboosted <1528712+xgboosted@users.noreply.github.com>
Co-authored-by: xgboosted <1528712+xgboosted@users.noreply.github.com>
|
No need for backward compatibility: Change PyPI package name from pandas_ta to pandas_ta_classic |
…ta_classic Co-authored-by: xgboosted <1528712+xgboosted@users.noreply.github.com>
✅ Implemented: Removed backward compatibility and changed package structure. Changes made (commit 2c3c561):
Verified working:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR implements a breaking change that restructures the package from pandas_ta to pandas_ta_classic, aligning the Python package name with the PyPI package name pandas-ta-classic. The change removes backward compatibility and requires users to update their import statements.
- Renamed Python package from
pandas_tatopandas_ta_classic - Updated all internal imports throughout the codebase to use the new package structure
- Modified setup.py to reflect the new package structure and updated URLs to point to the new repository
Reviewed Changes
Copilot reviewed 179 out of 193 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| setup.py | Updated package name to "pandas-ta-classic" and all module paths to use "pandas_ta_classic" prefix |
| pandas_ta_classic/init.py | Updated package name references and import paths |
| All indicator modules | Updated internal imports to use "pandas_ta_classic" instead of "pandas_ta" |
| Test files | Updated imports to use new package structure |
| Documentation files | Updated references to use new package naming |
| Examples | Updated import statements to use pandas_ta_classic |
| def _camelCase2Title(x: str): | ||
| """https://stackoverflow.com/questions/5020906/python-convert-camel-case-to-space-delimited-using-regex-and-taking-acronyms-in""" | ||
| return re_.sub("([a-z])([A-Z])","\g<1> \g<2>", x).title() | ||
| return re_.sub("([a-z])([A-Z])", r"\g<1> \g<2>", x).title() |
Copilot
AI
Aug 1, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The regex replacement uses a raw string with extra escaping. The pattern should be r"\g<1> \g<2>" or the original "\g<1> \g<2>" but not both. The current format r"\g<1> \g<2>" will produce literal backslashes in the output.
| return re_.sub("([a-z])([A-Z])", r"\g<1> \g<2>", x).title() | |
| return re_.sub("([a-z])([A-Z])", "\g<1> \g<2>", x).title() |
| """Chande Momentum Oscillator (CMO) Patch | ||
| For some reason: from pandas_ta.momentum import cmo causes | ||
| For some reason: from pandas_ta_classic.momentum import cmo causes | ||
| pandas_ta.momentum.coppock to not be able to import it's |
Copilot
AI
Aug 1, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment references the old package name in the explanation. It should be updated to reflect the new package structure consistently.
| pandas_ta.momentum.coppock to not be able to import it's | |
| pandas_ta_classic.momentum.coppock to not be able to import its |
| For some reason: from pandas_ta_classic.momentum import cmo causes | ||
| pandas_ta.momentum.coppock to not be able to import it's | ||
| wma like from pandas_ta.overlap import wma? | ||
| wma like from pandas_ta_classic.overlap import wma? | ||
| Weird Circular TypeError!?! |
Copilot
AI
Aug 1, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] This comment line is part of the same docstring and maintains consistency with the package name update, but the explanation could be clearer about what the circular import issue actually is.
This PR removes backward compatibility and restructures the package to use
pandas_ta_classicas the Python package name, aligning with the PyPI package namepandas-ta-classic.Key Changes
Package Structure
pandas_tatopandas_ta_classicpandas_ta_classic.*modules)Import Syntax Change
import pandas_ta_classic as taimport pandas_ta as tapandas-ta-classicUpdated Documentation
import pandas_ta_classic as tapip install pandas-ta-classicBreaking Change
This is a breaking change that requires users to update their import statements:
Validation
pandas-ta-classicimport pandas_ta_classic as taworks correctlyThis change establishes a clear naming convention where both the PyPI package name and Python package name use the
pandas-ta-classicidentifier.💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.