Skip to content

Encoder-decoder task support#16

Open
top-sekret wants to merge 11 commits into
sio2project:masterfrom
top-sekret:encdec
Open

Encoder-decoder task support#16
top-sekret wants to merge 11 commits into
sio2project:masterfrom
top-sekret:encdec

Conversation

@top-sekret

@top-sekret top-sekret commented Apr 6, 2023

Copy link
Copy Markdown
Member

This is a draft pull request that adds support for encoder-decoder tasks, as seen at latest OI finals.

Notes:

  • Currently, the decoder could get the encoder input just by opening a file with the correct name. This will be addressed.
  • Lacks unit tests.

Also see sio2project/oioioi#191.

@top-sekret

Copy link
Copy Markdown
Member Author

I have addressed the security issue and rebased this branch. I now mark it as ready for review, as we may come up with unit tests during the review process.

@top-sekret top-sekret marked this pull request as ready for review April 24, 2023 00:40
@top-sekret top-sekret changed the title Draft: Encoder-decoder task support Encoder-decoder task support Apr 24, 2023
@top-sekret

Copy link
Copy Markdown
Member Author

Also note that this pull request can be merged before the OIOIOI one, because it does not alter any visible behavior. The converse is of course not true.

Comment thread sio/executors/encdec_common.py Outdated
from sio.workers.util import decode_fields, replace_invalid_UTF, tempcwd, TemporaryCwd
from sio.workers.file_runners import get_file_runner

import six

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is this needed? we don't support python 2.x anymore.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is most probably unneeded and is an artifact of trying to merge these changes with an older Python 2 codebase, used in Szkopuł. I am for removing this.

@top-sekret

Copy link
Copy Markdown
Member Author

I really wish this could be made to work. However, I am being stopped by what I think is a sio2jail bug.

@MasloMaslane

Copy link
Copy Markdown
Member

I think it's because Github runners don't give access to perf counters. But recently we created our own runner that can use sio2jail.

@top-sekret

Copy link
Copy Markdown
Member Author

I think it's because Github runners don't give access to perf counters. But recently we created our own runner that can use sio2jail.

I mean they won't even run locally.

@@ -28,13 +28,13 @@ def _make_cmdline(self, executor):
class CCompiler(CStyleCompiler):
compiler = 'gcc'
# Without -static as there is no static compilation on Mac

@otargowski otargowski May 29, 2023

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure whether this comment even has sense.

I would guess that the docker images on macOS don't have the static linking issues like the base OS.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would guess that we don't care about crap macOS in workers.

@top-sekret

top-sekret commented Dec 18, 2023

Copy link
Copy Markdown
Member Author

Okay, I'm out of patience. The tests do work. However, the CI is absolute crap and can't even set up Python.

I am reverting (actually rebasing out to get rid of the mess) all CI related commits. I will be running the tests on docker.io/library/python:3.9 and docker.io/library/debian:bookworm manually to ensure that the changes work.

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.

4 participants