Eikobot

Latest version: v0.7.7

Safety actively analyzes 638466 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 3

0.7.1

- Fixed a bug where python relative imports in modules didn't work when eikobot is called directly
- Fixed eikobot version not being checked for projects even though it was specified in the eiko.toml
- Improved use of caching for installation of packages
- No longer uninstalls and then re-installs a package when it already installed

0.7.0

- Added `GH:{owner}/{package_name}` format to package install options
- Added `[eiko.project]` options to the `eiko.toml` (this has per project settings, picked up at runtime)
- Added an `dry_run` option to the `eiko.toml`
- Added a `requires` option to `eiko.toml`, similar to how this is handled for packages
- Added `.` as a special argument for `eikobot package install`, that installs requirements of a project or package
- Added membership testing, using the `in` keyword
- Fixed yet another bug in relative imports

0.6.1

Fixed parsing of relative imports

0.6.0

- Much better support for windows hosts!
- Added `HostModel.scp_to` and `HostModel.scp_from` to copy files with SCP
- Fixed a bug where `.` wasn't parsed properly in the inheritance declaration
- Fixed a bug where promises were not properly inherited
- Implemented `...`, a statement that allows for inheriting without new properties being added
- Allow inheritance to only overwrite the constructor, with no additional properties
- Fixed a bug where lists and dicts as default arguments caused a compilation issue
- Fixed a bug in the comparison operations where `None` would not equal itself
- Fixed a bug where a hanging comma in a constructor arg list would cause a syntax error
- Made TaskID accessible through `HandlerContext`
- Added Task cache (This is a directory unique to the current Task/Handler and can be used to save files)
- Fixed several bugs in the type system
- Add a 🤖 to some of the logs
- Fixed a bug in the package manager that occurred when installing an already installed package
- Add a plugin `type` that returns the typing of an object as a string
- Made all the tests windows compatible
- If host verification fails due to missing keys, we allow the user to add those key
- Add `for` loops that loop over iterables (currently just lists and dicts)
- Implement `dict.get` function, that can retrieve a value with a default value

0.5.1

This patch fixes a bug in the package manager that wrongly reports a package was not installed
due to the url not being parsed properly.

0.5.0

- Made EikoPromise a `Generic`
- Made some errors clearer
- Added `std.script`
- Remove `exec_sudo`
- Fixed a bug that caused python models to be duplicated when converted from eiko objects through nested models
- Added a package manager
- Fixed a bug that caused indentation in the constructor definition argument list to break, resulting in a syntax error
- Remove python3.10 support due to it not supporting tomllib
- Fixed a bug that caused the deployer to resolve promises before the resource it comes from was deployed
- Added `py.typed` to enable python typing when developing modules and other things that rely on eikobots python code
- Fixed a bug where top level expressions starting with an illegal indent were still parsed as normal
- Added `enum`, a class like object that behaves much like enums in C
- Added `__pre__` and `__post__` methods to `Handler` class, which are called before and after handlers are executed
- Added port forwarding to `std.host`
- Added `cleanup` method to `Handler` class, which is called after _everything_ is deployed
- Use `Handler.cleanup` to more accuratly wait for ssh to close, instead of hoping asyncio.sleep was long enough
- Fixed a bug where variables starting with an underscore being converted to basemodel in python would crash the compiler
- Fixed a bug where properties inside constructors were not correctly type coerced
- A first implementation of `--dry-run`

Page 2 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.