Releases: Chisanan232/multirunnable
v0.17.0 - 🎉🎊🍾 Release version 0.17.0 package & documentation
🎉🎊🍾 New Feature
- Release latest version of documentation.
- Update README.
- Update package to version 0.17.0.
What's Changed
- Add new configurations for different branches and scenarios. by @Chisanan232 in #1
- Develop by @Chisanan232 in #3
- Adjust the configurations of GitHub Actions CI by @Chisanan232 in #4
- Add new actions to work flows of GitHub Actions and refactoring the testing code architecture. by @Chisanan232 in #7
- Add new actions to GitHub Actions and refactor testing code and configuration. by @Chisanan232 in #8
- Fix the issue about losing clone project process and remove option. by @Chisanan232 in #9
- Fix the issue about losing clone project process and remove option. by @Chisanan232 in #10
- Finish CI/CD work flow via GitHub Action and refactor testing code. by @Chisanan232 in #11
- Finish CI/CD work flow via GitHub Action and refactor testing code. by @Chisanan232 in #12
- Fix issue about it cannot upload the Python package files to PyPI. by @Chisanan232 in #14
- ⚒🛠💣 Bug Fix: it cannot upload the Python package files to PyPI. by @Chisanan232 in #15
- 🔧⚙️🔥 Hot Fix: Fix the issue about it cannot upload package to PyPI by @Chisanan232 in #16
- 🔧⚙️🔥 Hot Fix: Fix the issue about it cannot upload package to PyPI by @Chisanan232 in #17
- ⚒🛠💣 Bug Fix: The coverage report has be expired when it uploads to codecov. by @Chisanan232 in #18
- 🤖🛠⚙️ [Major Change] Update the documentation and README. by @Chisanan232 in #19
New Contributors
- @Chisanan232 made their first contribution in #1
Full Changelog: v0.16.2...v0.17.0
v0.17.0a2 - 🛠🔥 Fix package error and 🎉🍾 finish CI/CD work flow
🎉🎊🍾 New Feature
- Finish CI/CD work flow with each branches via GitHub Action (run test in Linux OS & Mac OS).
- Add integration test and compatibility test.
- Add docker-compose configuration for developer to run test.
- Add git-commit rules.
⚒⚒💣 Bug Fix
- It doesn't package sub-package.
- Sub-package .persistence.database use the same configuration object in every instance which is sub-class of modules in it.
- Test cases of module .persistence.database.strategy doesn't reset setting.
🔧⚙️🔩 Major Change
-
Refactor the software architecture of test. It has 3 main modules:
- Unit Test (./tests/unit_test)
- Integration Test (./tests/integration_test)
- Compatibility Test (./tests/compatibility_test)
-
Deprecated CI tool AppVeyor.
-
CI tool Circle-CI changes to run test in Windows OS. (Not finish yet 🙅♂️)
-
Modify the coding style about importing modules in package and test.
v0.17.0a1 - Refactoring Persistence modules and tests
🔧🔩⚙️ Modify:
-
Modify the implementations of modules in .persistence.database.
-
Implement mostly skipped testing items (includes fix issue or add new testing items).
-
Refactoring module in tests:
3-1 . Testing with different RunningMode in .persistence.database and .persistence.file.
3-2. Let all example codes to run test in below testing modules integrate into module _.examples.- tests.executor
- tests.pool
- tests.parallel.strategy
- tests.concurrent.strategy
- tests.coroutine.strategy
- tests.api.operator
- tests.adapter.context
- tests.adapter.lock
- tests.adapter.communication
-
Implement exception assignment in all methods of object GreenThreadPool in module .coroutine.strategy.
-
Modify the implementation of methods 'apply' and 'apply_with_iter' of each implementations of Pool object in every sub-package .strategy.
v0.17.0a1.dev1
🎉🎊🍾 New feature
- Retry mechanism (multirunnable.api.decorators.retry) support to use with general function (a global function in module) and bounded function (method). But it still does NOT support for classmethod and staticmethod.
🔧🔩⚙️ Refactor
- Rename the module feature to synchronization.
- Move the Queue objects to another new module queue.
⚒🛠💣 Fix issue
- Fix the issue about the retry mechanism processes (initialization, done, etc) are all the same between each different functions with retry mechanism.
v0.16.2 - Add new feature in Pool
New feature
- Add new methods apply_with_iter and async_apply_with_iter for object Pool.
v0.16.1 - Fix issues (AsyncResult and Persistence)
Fix issues
- Fix the issue about return value AsynchronousResult doesn't be assigned result data correctly.
- Fix the issue about AsynchronousResult would keep accumulating every time.
- Fix the issue about subclass BaseConnectionPool cannot access private variable __Database_Config.
v0.16.0 - Refactoring sub-package 'Persistence' and adding documentation
Main Change
- Refactoring sub-package '.persistence'.
- Finish result features for every running strategy.
- Deprecated and removed sub-package 'logger' and modules 'PersistenceTask', 'PersistenceExecutor' and 'PersistencePool'.
- Fix the compatibility issue with Python 3.6.
New
- Add documentation for MultiRunnable.
Maintaining (For Developers)
- Add testing of MultiRunnable.
- Add some documentation for developing. (Please refer to 'Development documentation' section in documentation.)
- Introduce CI tool.
3-1. Circle-CI
3-2. GitHub Actions
3-3. AppVeyor
v0.16.0rc2
Main Change
- Deprecate and remove sub-package '.logger'.
- Deprecate and remove some modules which are unused.
- Fix all issues which lead to package cannot work finely in Python 3.6.
v0.16.0rc1
For users of package 'multirunnable':
- Rewrite su-package 'persistence', including 'persistence.database' and 'persistence.file'.
- Add result data feature of 'Executor' and 'Pool' object.
- Deprecate and remove unused class 'OceanPersistenceTask'.
- Deprecate and remove classes 'PersistenceExecutor' and 'PersistencePool'.
- Fix some issues
- It doesn't exist Simple Queue in Python 3.6.
- Raising exception 'ValueError' of 'multiprocessing.set_start_method' in WindowOS.
- Asynchronous Strategy method 'async_map_by_args' doesn't work finely.
- Process Strategy raising AttributeError: 'Process' object has no attribute 'Process.close' in Python 3.6.
- Data-Checking mechanism logic incorrectly in JSONFormatter module.
- Result data doesn't share between different processes in Parallel strategy.
- Record flag incorrectly of '__run_successful'.
For developers of package 'multirunnable':
- Add testing code for mostly modules or objects (please refer to the directory 'tests').
- Deprecated CI 'Travis-CI' and change to use 'Circle-CI' and 'GitHub Actions'.
v0.15.2 - Remove something and Support Python 3.10
- Deprecated and remove modules 'Task'.
- Rename modules about 'Queue' in different running strategies.
- Fix the import issue about 'from collections import Iterable' in Python 3.10.