← 返回首页
[WIP] [Data API] Backend refactoring by roaffix · Pull Request #262 · arrayfire/arrayfire-python · GitHub
Skip to content

Navigation Menu

Toggle navigation
Sign in
Appearance settings
Search or jump to...

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Include my email address so I can be contacted

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
Resetting focus

[WIP] [Data API] Backend refactoring#262

Open
roaffix wants to merge 36 commits into
arrayfire:masterfrom
roaffix:feature/backend-refactoring
Open

[WIP] [Data API] Backend refactoring#262
roaffix wants to merge 36 commits into
arrayfire:masterfrom
roaffix:feature/backend-refactoring

Conversation

Copy link
Copy Markdown
Contributor

roaffix commented Apr 3, 2023
edited
Loading

NOTE: the assumption that this PR will be merged right after the #261

Major changes:

  • Wrap safe_call(backend.get()...) under the library call which is now used as a private wrapper of the C library. That makes the public part of the library more intuitive for both end-users and library contributors.
  • Wrap ctypes under CType which inherits the ctypes._SimpleCData type.
  • Project structure changes:
    • C library wrapper moved to the corresponding folder
    • Moved dtype aux functions to dtypes/helpers. Also, some methods were transferred there from the array_object file
  • Added operators block which is duplicated the functionality of magic methods (like __add__) from the main array object and is required by the specification
  • Changed testing structure to test parameterization and test auto-generation. These solutions decrease somehow an intuition of test cases but simplify the flow of adding new cases - it requires 1 or 2 rows instead of hundreds, now.

Minor changes:

  • Removed some tags (TODO, FIXME, etc.) from the previous PR
  • Removed an introduced in previous PR custom type ShapeType to avoid extra complexion in library typing
  • Other minor code style changes
  • Fixed minor bugs

--- WIP ---

  • backend config separated into pre-setup and backend configuration settings
  • add more operators
  • add more tests coverage
  • add mocks for different backend types for even more coverage of different test scenarios
  • fix CI/CD in GitHub for CPU tests

Anton and others added 30 commits January 24, 2023 02:35
roaffix changed the title [WIP] Backend refactoring [WIP] [Data API] Backend refactoring Apr 3, 2023
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Footer

© 2026 GitHub, Inc.