reimportlib: refactored imports
Project description
reimportlib: refactored imports
reimportlib is used to help with refactored old code where the imports were moved out, but you still wish to get legacy packages/classes to work, because you had serialized them at a point in time but they aren't available today.
Main Features
- Very compact
- Few Dependencies
Usage
import reimportlib
__import__ = reimportlib.import_
reimportlib.configure() # Reads mappings in .reimport.json
reimportlib.remap('foo.bar.', 'examples.foo.') # Notice the . at the end
print(reimportlib.get_remapped_name('foo.bar.C')) # 'examples.foo.C'
print(reimportlib.import_module('foo.bar.B'))
print(reimportlib.import_from('foo.bar.D', 'c'))
reimportlib.instantiate('foo.bar.D', 'Foo', *[4], val=True)
And then it should automatically be able to import or instantiate the new classes as required. Do check the provided test.py with this distribution.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
reimportlib-1.0.2.tar.gz
(2.5 kB
view details)
File details
Details for the file reimportlib-1.0.2.tar.gz
.
File metadata
- Download URL: reimportlib-1.0.2.tar.gz
- Upload date:
- Size: 2.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 77204e0bda4ebd37daf44df22ca23d0ddbf64abd3a91f02f26907535c8f19e82 |
|
MD5 | 99b7af8e6a39b3f8943d77d91fd6def5 |
|
BLAKE2b-256 | beb953e093c31e43d7394f1c3bc372881071e8e2a2918cedccf3a0c6093b5463 |