Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v0.1.12rc #537

Merged
merged 48 commits into from
Jan 19, 2021
Merged

Release v0.1.12rc #537

merged 48 commits into from
Jan 19, 2021

Conversation

bouthilx
Copy link
Member

🚀 Features

🐛 Bug Fixes

📜 Documentation

🧰 Maintenance

Add tests for v0.1.10 backward compatibility
Streamlining the release steps
Automatically update backward test versions
Experiment branching in particular was difficult to debug based on logs.
Why:

The LPI requires the objective. If we don't filter the non-completed trials, the
computation fails.

How:

Filter out non-completed trials in the plotting function. The analysis
function assumes trials with objectives, otherwise it would required
passing data frames including status.
Why:

%s format is harder to read than f'{}' format.
Ignore non-completed trials when computing LPI
Test that precision isn't messed up by linearization
Why:

Hyperband and ASHA would fail if they are passed trials that they did
not sample.

How:

Save sampled ids in algos and only observe points that were previously
sampled, otherwise ignore. This way we could still salvages points from
EVC if the current algo sample points that are in EVC (with same
fidelity), otherwise it ignores the points.
Why:

The code version was not infered properly when `orion hunt` is called
with only experiment name, not passing the user script cmdline.

How:

Re-infer code version based on merge of old metadata and new metadata.
Add more logging when branching
Why:

If the cmdline call is empty (no script), the metadata won't contain the
user script and thus code version will not be inferred. We fetching from
DB to optimize, the code version should be re-inferred to make sure
there was no code change between executions.
Add missing plotting doc in API section
Detect code change when no CMDLINE passed
Why:

Changing the version of Oríon could impact the behavior of the HPO,
therefore we should branch to avoid corrupting results.

How:

Add Conflict, Resolution and Adapter to detect and handle changes of
orion version.
…_change

Branch if Oríon version changes
Why:

The experiment view is useful to query the database and make plots, but
sometimes we want to add new trials or make modifications to trials
(like status) without executing the experiments. Making such edit should
not require building the experiment with checks for branching, as there
is no intention in executing trials. There should be
read/write/execution rights instead of just providing a view.

Read can:
Make any calls that only require reading the DB. No writes on DB

Read/Write can:
Make any calls that read or write the DB as long as it is not updating
trial results. Also the producer should not be accessible in Read/Write
mode, the algorithm should not be executed in an unchecked environment.

Read/Write/Exec can:
Do everything.

How:

Remove ExperimentView and add modes directly in Experiment. All methods
in Experiment now check it access rights of the experiment allows them
to execute.
Why:

More coherent with build_experiment/get_experiment of the client.
Add Read/Write/Execution modes for Experiment
@bouthilx bouthilx merged commit 94defe2 into master Jan 19, 2021
@bouthilx bouthilx deleted the release-v0.1.12rc branch January 19, 2021 22:24
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