Onecode

Latest version: v1.0.0

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

Scan your dependencies

1.0.0

Bug Fixes

:link: Issue Ref | :pushpin: Summary | :scroll: Description
-|-|-
[No Ref] | Fix filename in `Logger` message when typechecking is on | When typechecking is on, decorator filename was printed out instead of the actual filename from where the Logging originates from.

Enhancements

:link: Issue Ref | :pushpin: Summary | :scroll: Description
-|-|-
[No Ref] | Python versions 3.11 and 3.12 now supported | All Python versions ranging from 3.8 through 3.12 are now supported.
[No Ref] | `Slider` returns integers when possible | When min/max/step are integers, value is necessary an integer and returned as such.
[No Ref] | Refactor all file type output elements under `FileOutput` | No longer necessary to have one class per FileOutput type.
[No Ref] | `FileOutput` to optionally create output path | Use `make_path` in `file_output()` to automatically make the path if doesn't exists.


New Features

:link: Issue Ref | :pushpin: Summary | :scroll: Description
-|-|-
[No Ref] | OneCode Cloud compatibility | Rework and Streamlit extraction to make OneCode Apps deployable on OneCode Cloud.
[No Ref] | New CLI `onecode-build` | Extract the GUI JSON file used to build the UI on OneCode Cloud.
[No Ref] | New CLI `onecode-zip` | Archive all output data in a zip file.
[No Ref] | Add element dependency | Retrieve elements dependencies when attributes are dynamic.


:warning: Breaking changes

While it has been nice to get started with, Streamlit app generation is no longer part of OneCode. See [`onecode-streamlit`](https://github.com/deeplime-io/onecode-streamlit) for more information on backward-compatibility.

Checkout [this guide to upgrade from `0.x`](https://deeplime-io.github.io/onecode/1.0.0/#upgrading-from-0x).


:ledger: Notes

* `pyarrow` no longer a direct dependency of `onecode`. As a consequence, `CsvReader` element no longer read CSV through `pyarrow.read_csv()` but `pandas.read_csv()`
* `pydantic` no longer a strong dependency, it was moved to the `developer` dependencies. Therefore using the variable `ONECODE_DO_TYPECHECK=1` requires the `pydantic` installation.

0.4.0

Bug Fixes

Issue Ref | Summary |Description
-|-|-
[No ref] | Changes in traceback API in Python 3.10 was not properly handling exceptions in Streamlit | Using parameter position rather than name to allow backward compatibility with previous python versions.


Enhancements

Issue Ref | Summary |Description
-|-|-
[No ref] | Doc enhancements | Add more examples and info to documentation of output elements.
[No ref] | Rebranding | Update logo, main color and pictures.


New Features

Issue Ref | Summary |Description
-|-|-
[No ref] | Adding new output element VRML file | Visualize 3D scene with PyVista through VRML output.
[No ref] | Adding new output element MP4 file | Visualize video through an embedded video player.
[No ref] | Adding new input element for Section Header | Display a section header.
[No ref] | Adding new output element HTML file | Open HTML file through hyperlink in a new tab.


:warning: Breaking changes

None

0.3.0

Bug Fixes

Issue Ref | Summary | Description
-|-|-
[No ref] | Fix missing typing | CLI function `get_import_statements()` was missing return type.
[No ref] | Fixing links in documentation | Fixed wrong reference for some documentation internal hyperlinks.
[No ref] | Fix `PlotlyOutput` missing import | `import plotly` was missing from the `imports()` statements in `PlotlyOutput`.

Enhancements

Issue Ref | Summary | Description
-|-|-
[No ref] | Update onecode-pycg version | Allow versions greater than 0.0.7.
[No ref] | [CLI] add option to only generate the Streamlit app file without starting the server | Use `onecode-start --dump` to generate app.py: useful to avoid restarting the Streamlit server every time.
[No ref] | [CLI] add verbosity option when processing files | Use `--verbose` option on `onecode-start` or `onecode-extract` to print information about functions being processed.


New Features

Issue Ref | Summary | Description
-|-|-


:warning: Breaking changes

None

0.2.1

Patch

Bug Fixes

:octicons-issue-opened-24: Issue Ref | :fontawesome-solid-thumbtack: Summary | :material-message-text: Description
-|-|-
[21](https://github.com/deeplime-io/onecode/issues/21) | [Bug]: Streamlit error message 'setIn' cannot be called on an ElementNode when re-running application | Log stream handlers were accumulated in root logging namespace at each run as Streamlit kept the Logger instance active.

0.2.0

Bug Fixes

Issue Ref | Summary | Description
-|-|-
[9](https://github.com/deeplime-io/onecode/issues/9) | Correct `gatherUsageStats` env variable | `onecode-start` used wrong variable name to prevent sending stats.
[No ref] | `kind` is now a property of the `InputElement` and `OutputElement` | `kind` would have potentially been overwritten while extracting element through `onecode-extract`.

Enhancements

Issue Ref | Summary | Description
-|-|-
[5](https://github.com/deeplime-io/onecode/issues/5) | Improving DeepLearning example | Allow initialization of `NeuralNetInput` custom element with different layer specs.
[10](https://github.com/deeplime-io/onecode/issues/10) | Allow for custom import and init statements in InputElement and OutputElement | Streamlit `app.py` generated through `onecode-start` now has placeholders for import and init statements. See `imports()` and `init()` static methods in `InputElement` and `OutputElement`.
[No ref] | Allow meta-data for elements | Meta-data can now be attached to any Input/Output element through `**kwargs`.
[No Ref] | Namespace logging | Logger (info, warning, critical and debug) now uses a namespace `|OneCode|` rather than the root logging.


New Features

Issue Ref | Summary | Description
-|-|-
[1](https://github.com/deeplime-io/onecode/issues/1) | New input element `FolderInput` | `FolderInput` allows folder selection. `LASConverter` example showcases it.
[2](https://github.com/deeplime-io/onecode/issues/2) | New output element `PlotlyOutput` | `PlotlyOutput` allows to visualize Plotly charts. `ExperimentalVariography` example showcases it.
[No ref] | Setup Project configuration through environment variables | Allow additional way to setup Project configuration options from command line.


:warning: Breaking changes

* [10](https://github.com/deeplime-io/onecode/issues/10) introduces a potential breaking change if you have custom `InputElement` or `OutputElement` where the `streamlit()` method relies on one of these statements being present in `app.py`:
python
import tkinter as tk
from tkinter import filedialog
import numpy as np
from pyarrow import csv as pacsv
_root = tk.Tk()

If this is the case, simply inherit `import()` and/or `init()` static methods so that they return the relevant statements.
See `FileInput.imports()` and `FileInput.init()` as examples.

* Custom `InputElement` or `OutputElement` can no longer initialized with an argument named `kind`:
it now is a reserved attribute. This change was triggered by a bug fix as `kind` was potentially overwritten
when extracting element through `onecode-extract`. Upgrade your custom element by changing your argument name.

0.1.0

Initial release, checkout the [documentation](https://deeplime-io.github.io/onecode/0.1.0/)

Elements featured:
* checkbox
* csv_reader
* dropdown
* file_input
* number_input
* radio_button
* slider
* text_input
* csv_output
* file_output
* image_output
* text_output

CLI featured:
* `onecode-create`
* `onecode-add`
* `onecode-extract`
* `onecode-start`

Links

Releases

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.