profile
viewpoint
Alexey Kirpichnikov beevee @skbkontur Ekaterinburg, Russia

kontur-contests/icfpc2018-kontur-ru 12

kontur.ru team @ ICFPC 2018

kontur-contests/icfpc2017-kontur-ru 4

kontur.ru team @ ICFPC 2017

beevee/switchers 3

A multiplayer Telegram game

beevee/konturtransferbot 2

@KonturTransferBot answers questions on Kontur bus schedule

kontur-contests/icfpc2019-tech-kontur-ru 2

tech.kontur.ru team @ ICFPC 2019

beevee/konfurbot 1

@KonfurBot answers questions about winter KonfUR 2016 conference

skbkontur/highload-2017-quiz 1

Задание для участников HighLoad++ 2017

AndrewKostousov/kload 0

Kafka perf testing

issue commenticfpcontest2020/dockerfiles

Proposal: Aligning the build/run protocol among platforms

Simplicity is a strong argument, yes. I think we can handle a limited amount of large base images in our submission system.

nya3jp

comment created time in 7 hours

issue commenticfpcontest2020/dockerfiles

What if a solution consists of multiple binaries of different programming langauges?

Exactly, I'm keeping it open to help other users who might have the same question.

nya3jp

comment created time in 9 hours

issue commenticfpcontest2020/dockerfiles

Proposal: Aligning the build/run protocol among platforms

Brilliant idea! Can I ask any one of you to rewrite a single platform of your choice to @jeremysawicki's second option (single image)? We'll verify that everything works fine: that it's comfortable for you as the developers and doesn't break our submission system. Then I'll try to align all the other platforms.

nya3jp

comment created time in 9 hours

pull request commenticfpcontest2020/dockerfiles

Add factor

Thanks for the contribution! Can I ask you to create a minimal sample application that works with this dockerfile? Please, open a PR in this repository: https://github.com/icfpcontest2020/starterkit-factor

You can use https://github.com/icfpcontest2020/starterkit-haskell/tree/master/app as an example of what the application should do.

aankor

comment created time in 9 hours

push eventicfpcontest2020/starterkit-factor

Alexey Kirpichnikov

commit sha c0d413f5283ddeea1ccabefaa5d9c60f0bcca18d

Create .platform

view details

push time in 9 hours

create barnchicfpcontest2020/starterkit-factor

branch : master

created branch time in 10 hours

created repositoryicfpcontest2020/starterkit-factor

created time in 10 hours

issue commenticfpcontest2020/dockerfiles

Add Elixir (and Erlang)

Well, it builds without errors. And when run it makes a HTTP request to the provided URL. I consider that a success. Thank you very much for the contribution!

JEG2

comment created time in a day

push eventicfpcontest2020/dockerfiles

Paul Dawson

commit sha 5e71ed750c38fa7a6cdbff4f5f7770fe75df62c9

First pass at Dockerfile for Elixir

view details

push time in a day

PR merged icfpcontest2020/dockerfiles

First pass at Dockerfile for Elixir

Fixes https://github.com/icfpcontest2020/dockerfiles/issues/10

Let me know how this looks, I ran through what I think is the build process using the Elixir starterkit I also created:

  1. copy Dockerfile into root of starterkit project
  2. run docker build --tag starterkit-elixir:1.0 .
  3. run docker run starterkit-elixir:1.0 http://example.com whatever

This results in a successful request to example.com with the second argument as the player key.

$ docker run starterkit-elixir:1.0 http://example.com whatever
server_url: "http://example.com"
player_key: "whatever"
'<!doctype html>\n<html>\n<head>\n    <title>Example Domain</title>\n\n    <meta charset="utf-8" />\n    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />\n    <meta name="viewport" content="width=device-width, initial-scale=1" />\n    <style type="text/css">\n    body {\n        background-color: #f0f0f2;\n        margin: 0;\n        padding: 0;\n        font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;\n        \n    }\n    div {\n        width: 600px;\n        margin: 5em auto;\n        padding: 2em;\n        background-color: #fdfdff;\n        border-radius: 0.5em;\n        box-shadow: 2px 3px 7px 2px rgba(0,0,0,0.02);\n    }\n    a:link, a:visited {\n        color: #38488f;\n        text-decoration: none;\n    }\n    @media (max-width: 700px) {\n        div {\n            margin: 0 auto;\n            width: auto;\n        }\n    }\n    </style>    \n</head>\n\n<body>\n<div>\n    <h1>Example Domain</h1>\n    <p>This domain is for use in illustrative examples in documents. You may use this\n    domain in literature without prior coordination or asking for permission.</p>\n    <p><a href="https://www.iana.org/domains/example">More information...</a></p>\n</div>\n</body>\n</html>\n'
+14 -0

0 comment

1 changed file

piisalie

pr closed time in a day

issue closedicfpcontest2020/dockerfiles

Add Elixir (and Erlang)

Elixir requires Erlang, so this is a request for that language as well.

The current version of Elixir is 1.10.3. The current version of Erlang is OTP 23.0.

closed time in a day

JEG2

push eventicfpcontest2020/starterkit-elixir

Paul Dawson

commit sha 400989794532c767bd6c7eaf61cb9241f61039c0

First pass at basic Elixir release

view details

Alexey Kirpichnikov

commit sha 29111e80d6544c30b1e2dfea607f89ab7e51b9b7

Merge pull request #1 from piisalie/feature/add_example First pass at basic Elixir release

view details

push time in a day

PR merged icfpcontest2020/starterkit-elixir

First pass at basic Elixir release

a part of: https://github.com/icfpcontest2020/dockerfiles/issues/10

required for: https://github.com/icfpcontest2020/dockerfiles/pull/34

+87 -0

0 comment

9 changed files

piisalie

pr closed time in a day

issue closedicfpcontest2020/dockerfiles

Need C++ HTTP library

A library will be needed to talk to an HTTP server in C++. There are likely many options. One I have used is libcurl. The development package (libcurl4-openssl-dev) is already available in the gcc:10.1.0 image, assuming the build process is enhanced to permit linking against a library (https://github.com/icfpcontest2020/dockerfiles/issues/20). But the runtime package (libcurl4) is not available in the debian:buster-20200607-slim image, so the resulting binary will not run.

More generally, it will probably be necessary to create a customized base image as was done with haskell (https://github.com/icfpcontest2020/dockerfiles/issues/8) so packages needed/wanted by various teams can be installed. Packages may need to be added to both the gcc:10.1.0 and debian:buster-20200607-slim images, so I supposed two customized images should be created.

closed time in a day

jeremysawicki

issue commenticfpcontest2020/dockerfiles

Generic JVM image?

I think, it would be better to just extend our current java image with build and run scripts. Something along the lines of starterkit-cpp. This way you can hide javac invocation inside build script and easily replace it with copying of a prebuilt jar.

belyaev-mikhail

comment created time in a day

push eventicfpcontest2020/dockerfiles

Jeremy Sawicki

commit sha fe101f251e0f16e601b75dbbf72932408aabf0ac

C++ base dockerfiles with curl, jansson, gmp, and boost

view details

Jeremy Sawicki

commit sha 0f1707cee2a996605129179c673e1e155655925b

Add C++ libraries for qt5

view details

push time in 2 days

PR merged icfpcontest2020/dockerfiles

C++ base dockerfiles with curl, jansson, gmp, and boost

To support C++ libraries (see https://github.com/icfpcontest2020/dockerfiles/issues/23), this pull request adds dockerfiles for two base images (build and run). I added a few libraries; others can suggest more.

+16 -2

1 comment

3 changed files

jeremysawicki

pr closed time in 2 days

issue commenticfpcontest2020/dockerfiles

Need C++ HTTP library

We've included a simple header-only HTTP library in our C++ starterkit: https://github.com/icfpcontest2020/starterkit-cpp/tree/master/app

Looking forward to a PR with a more proper dependency support.

jeremysawicki

comment created time in 3 days

push eventicfpcontest2020/starterkit-rust

Alexey Kirpichnikov

commit sha 1c676816799058205582d03f1d63fe8184736b6b

Make playerKey parameter name consistent with other starterkits

view details

push time in 3 days

push eventicfpcontest2020/starterkit-java

Alexey Kirpichnikov

commit sha 04fc0a9afdfe13196da012f170999ce23472b748

Make playerKey parameter name consistent with other starterkits

view details

push time in 3 days

issue closedicfpcontest2020/dockerfiles

Adding commonly used Haskell libraries

This probably also applies to other languages in varying extents, but I'd like to draw attention to the fact that a lot of commonly used functionality in Haskell is implemented outside of the "standard library" and thus currently missing from the corresponding Docker image. Unless the submissions are supposed to use only the standard prelude, I'd like to ask whether some commonly used Haskell libraries could be added to the image. If you agree to include include a certain set of libraries, I could make a PR with an extended Dockerfile.

As a concrete proposal, here are some packages the team I'm part of (udfew) used frequently in the last years:

  • aeson: Fast JSON parsing and encoding
  • array: Mutable and immutable arrays
  • attoparsec: Fast combinator parsing for bytestrings and text (alternatively parsec or megaparsec)
  • bytestring: Fast, compact, strict and lazy byte strings with a list interface
  • cereal: A binary serialization library
  • containers: Assorted concrete container types
  • deepseq: Deep evaluation of data structures
  • directory: Platform-agnostic library for filesystem operations
  • filepath: Library for manipulating FilePaths in a cross platform way.
  • hashable: A class for types that can be converted to a hash value
  • io-streams: Simple, composable, and easy-to-use stream I/O
  • lens: Lenses, Folds and Traversals (alternatively microlens-platform)
  • monad-control: Lift control operations, like exception catching, through monad transformers
  • MonadRandom: Random-number generation monad.
  • mtl: Monad classes, using functional dependencies
  • optparse-applicative: Utilities and combinators for parsing command line options
  • random: Pseudo-random number generation
  • text: An efficient packed Unicode text type.
  • time: A time library
  • transformers: Concrete functor and monad transformers
  • transformers-base: Lift computations from the bottom of a transformer stack
  • unordered-containers: Efficient hashing-based container types
  • vector: Efficient Arrays

closed time in 3 days

aergus

push eventicfpcontest2020/starterkit-haskell

Alexey Kirpichnikov

commit sha 51edde2a52ffda5585f0c3098fb0604a2829e269

Send a sample HTTP request

view details

push time in 3 days

push eventicfpcontest2020/starterkit-rust

Igor Lukanin

commit sha 7bed9e6c8013b5af0536e1b62a263a9eccd22b4a

Simple kit

view details

Igor Lukanin

commit sha d8e14011d0457869b7e872629440416ae09b5c5a

HTTP-requesting kit w/ vendored dependencies

view details

Igor Lukanin

commit sha 8152d3233962989b491c083fc207952ba52ef1b6

Add OpenSSL bindings

view details

Igor Lukanin

commit sha 12a80990262dd18ee9d23f9f68fa88341961db9a

Merge branch 'master' into igorlukanin

view details

Igor Lukanin

commit sha 25e3991b6f1d05cc0b271a7a0fcda220f51faa8a

Remove vendored dependencies

view details

Igor Lukanin

commit sha 06af2c388b41ba27dde04093b215d66902872180

Merge remote-tracking branch 'origin/master' into igorlukanin

view details

Alexey Kirpichnikov

commit sha 152be735f8477e21afc83dacb576c83980f31a3f

Merge pull request #1 from icfpcontest2020/igorlukanin Use cargo for build. Vendor dependencies

view details

push time in 3 days

PR merged icfpcontest2020/starterkit-rust

Reviewers
Use cargo for build. Vendor dependencies

Updated the kit to perform HTTP requests. Also vendored the dependencies

+452 -4

1 comment

6 changed files

igorlukanin

pr closed time in 3 days

push eventicfpcontest2020/dockerfiles

Igor Lukanin

commit sha d917778537a0aa61e1e166cae7166dfc7c491c58

Use cargo to build Rust apps with vendored dependencies

view details

Igor Lukanin

commit sha b513eb65910e2ebc5ed8ceb59e97172a47072565

Extract base Dockerfile

view details

push time in 3 days

PR merged icfpcontest2020/dockerfiles

Use cargo to build Rust apps with vendored dependencies

Works with this PR: https://github.com/icfpcontest2020/starterkit-rust/pull/1/files

+21 -6

0 comment

5 changed files

igorlukanin

pr closed time in 3 days

push eventicfpcontest2020/dockerfiles

Alexey Kirpichnikov

commit sha 7f47ee1168d30480d06648e53380158435f3a72f

bash: Update README

view details

push time in 3 days

push eventicfpcontest2020/starterkit-bash

Alexey Kirpichnikov

commit sha 26142e957c59b4e93590ce23bc39c3a14045008f

Add sample application

view details

push time in 3 days

push eventicfpcontest2020/dockerfiles

Alexey Kirpichnikov

commit sha 6710783ec5787179ee2422091d413eaa84d117b0

bash: Switch Dockerfile to new base image

view details

push time in 3 days

push eventicfpcontest2020/dockerfiles

Alexey Kirpichnikov

commit sha 89602686a375b6dfa00908c9edce80b9e6f3baf9

bash: Add base image with curl

view details

push time in 3 days

push eventicfpcontest2020/dockerfiles

Alexey Kirpichnikov

commit sha 6a856fe134d2f0f3e6f175d876c23e8278345940

doc: Make READMEs more consistent

view details

push time in 3 days

push eventicfpcontest2020/starterkit-javascript

Alexey Kirpichnikov

commit sha 86836f417c2d566b08e70ba3710c9ca9fac90905

Create LICENSE

view details

push time in 3 days

push eventicfpcontest2020/starterkit-java

Alexey Kirpichnikov

commit sha 874060ebac5f0cde90de4526a128941320840714

Create LICENSE

view details

push time in 3 days

push eventicfpcontest2020/starterkit-csharp

Alexey Kirpichnikov

commit sha 08c6117da739e5ceaf871846f1271147122ea27b

Create LICENSE

view details

push time in 3 days

push eventicfpcontest2020/starterkit-cpp

Alexey Kirpichnikov

commit sha 4cfef2476a201169adda14dbd892266dab509279

Create LICENSE

view details

push time in 3 days

push eventicfpcontest2020/starterkit-elixir

Alexey Kirpichnikov

commit sha 4d6f198aebce931e04c47b3e37afa705caa2c9b0

Create LICENSE

view details

push time in 3 days

push eventicfpcontest2020/starterkit-rust

Alexey Kirpichnikov

commit sha 895bec2af2a591349c183c2adf35e72f17be36bd

Create LICENSE

view details

push time in 3 days

push eventicfpcontest2020/starterkit-go

Alexey Kirpichnikov

commit sha 65e1d6bad003556243425bba7eeef93512298de2

Create LICENSE

view details

push time in 3 days

push eventicfpcontest2020/starterkit-python

Alexey Kirpichnikov

commit sha 5b63b732a81b0fa50a38a78522dfc50187500bb2

Create LICENSE

view details

push time in 3 days

push eventicfpcontest2020/starterkit-bazel

Alexey Kirpichnikov

commit sha 5eaca3b4d4396df8b5d898a19cc72ac614b3153d

Create LICENSE

view details

push time in 3 days

push eventicfpcontest2020/starterkit-haskell

Alexey Kirpichnikov

commit sha b197be7138f589e085affe7d23c413b89d664bd9

Create LICENSE

view details

push time in 3 days

push eventicfpcontest2020/starterkit-bash

Alexey Kirpichnikov

commit sha 13bb054be4b8dc9ad87497b754a6d6705c4d3b2a

Create LICENSE

view details

push time in 3 days

pull request commenticfpcontest2020/dockerfiles

Add generic platform

I'm afraid it won't work, because we restrict Internet access during build. apt-get will fail.

You should split your Dockerfile into two separate images:

  1. Base image with all necessary dependencies installed (Internet access allowed during build).
  2. Runnable image with team's submission (Internet access not allowed during build).

You can refer to a nice working example here: https://github.com/icfpcontest2020/dockerfiles/tree/master/dockerfiles/bazel

last-g

comment created time in 3 days

push eventicfpcontest2020/dockerfiles

autotaker

commit sha e540c83868a1338b337fd9d4eabd832c7bd013b8

add docker image for bash

view details

autotaker

commit sha 55de9be9830f74cf41df2383b25c8f4ce9735894

add README for bash

view details

push time in 3 days

PR merged icfpcontest2020/dockerfiles

Add bash

For teams who want to use pre-compiled binaries, I propose to add this simple bash platform.

See discussions in #11

+10 -0

1 comment

2 changed files

autotaker

pr closed time in 3 days

create barnchicfpcontest2020/starterkit-bash

branch : master

created branch time in 3 days

created repositoryicfpcontest2020/starterkit-bash

created time in 3 days

push eventicfpcontest2020/dockerfiles

Aras Ergus

commit sha baffc5122aa7a3c140dff891d68d8f3cf443df2d

Add some libraries to the base Haskell image

view details

Aras Ergus

commit sha f47ed456fd49311dd8a9264ce8dc454815eddb17

Make the Haskell image use stack

view details

push time in 3 days

PR merged icfpcontest2020/dockerfiles

Use Stack in the Haskell image and add some libraries

This addresses #8. In addition to the libraries mentioned there, I've also added http-conduit because it looks like submissions will need to deal with HTTP requests.

The non-base Dockerfile still uses separate images for building and running the submission, so there is the implicit assumption that the Stack project is configured to generate a statically linked binary.

I will also make made a pull request to starterkit-haskell to make it compatible with these images.

+34 -5

0 comment

2 changed files

aergus

pr closed time in 3 days

push eventicfpcontest2020/starterkit-haskell

Aras Ergus

commit sha 7cd99cee277627e26184a4a063e424ffc4bda5f0

Add metadata for stack

view details

push time in 3 days

PR merged icfpcontest2020/starterkit-haskell

Make the starter kit into a Stack project

In conjunction with the proposal for using Stack in the submission image for Haskell, this adds some metadata to allow the starter kit to be built with Stack.

+116 -0

0 comment

3 changed files

aergus

pr closed time in 3 days

push eventicfpcontest2020/starterkit-bazel

Shuhei Takahashi

commit sha d44102981f68a3ca4ee74961f33f5194abb48373

Add .gitignore Bazel creates symlinks named bazel-* in the workspace root. They should not be committed to Git history.

view details

Shuhei Takahashi

commit sha c4f37ddfcf0a8eb9f1e89d504af5bedf02205f60

Send a sample HTTP request The code does roughly the same thing as starterkit-csharp. https://github.com/icfpcontest2020/starterkit-csharp/blob/master/app/Program.cs Verified that the app works on Linux and macOS by the following command: $ bazel run //app http://example.com key

view details

push time in 3 days

PR merged icfpcontest2020/starterkit-bazel

Send a sample HTTP request

The code does roughly the same thing as starterkit-csharp. https://github.com/icfpcontest2020/starterkit-csharp/blob/master/app/Program.cs

Verified that the app works on Linux and macOS by the following command:

$ bazel run //app http://example.com key

+801 -3

0 comment

8 changed files

nya3jp

pr closed time in 3 days

push eventicfpcontest2020/dockerfiles

Shuhei Takahashi

commit sha e456286ed46c209acb1d1251b8751fe337828737

bazel: Add third-party dependencies needed by starterkit-bazel Following libraries are added: - CPR 1.5.0 (https://github.com/whoshuu/cpr) - libcurl 7.69.1 (https://curl.haxx.se/libcurl/) - zlib 1.2.11 (https://zlib.net/)

view details

push time in 3 days

PR merged icfpcontest2020/dockerfiles

bazel: Add third-party dependencies needed by starterkit-bazel

Following libraries are added:

  • CPR 1.5.0 (https://github.com/whoshuu/cpr)
  • libcurl 7.69.1 (https://curl.haxx.se/libcurl/)
  • zlib 1.2.11 (https://zlib.net/)
+4 -1

0 comment

1 changed file

nya3jp

pr closed time in 3 days

push eventicfpcontest2020/dockerfiles

Shuhei Takahashi

commit sha 79344b72ae43b1c2d50905d1662f5fdb7142b8a3

python: Allow installing third-party libraries

view details

push time in 3 days

push eventicfpcontest2020/starterkit-python

Shuhei Takahashi

commit sha c83268c82ab5bbfd3e77700d9e18ecd3539c748e

Send a sample HTTP request The code does roughly the same thing as starterkit-csharp. https://github.com/icfpcontest2020/starterkit-csharp/blob/master/app/Program.cs

view details

push time in 3 days

PR merged icfpcontest2020/starterkit-python

Send a sample HTTP request

The code does roughly the same thing as starterkit-csharp. https://github.com/icfpcontest2020/starterkit-csharp/blob/master/app/Program.cs

+14 -1

1 comment

1 changed file

nya3jp

pr closed time in 3 days

pull request commenticfpcontest2020/starterkit-python

Send a sample HTTP request

You are a hero.

nya3jp

comment created time in 3 days

push eventbeevee/konturtransferbot

Alexey Kirpichnikov

commit sha 6a326a88f602ecfbb24de65bd5ad50c2f07c74fd

Update schedule starting on July 2nd

view details

push time in 3 days

pull request commenticfpcontest2020/starterkit-go

Send a sample HTTP request.

Yay! What about Bazel though?

image

nya3jp

comment created time in 4 days

push eventicfpcontest2020/starterkit-go

Shuhei Takahashi

commit sha d3873ec80492310ff068e9cc3c51c59584112013

Send a sample HTTP request. The code does roughly the same thing as starterkit-csharp. https://github.com/icfpcontest2020/starterkit-csharp/blob/master/app/Program.cs

view details

push time in 4 days

PR merged icfpcontest2020/starterkit-go

Send a sample HTTP request.

The code does roughly the same thing as starterkit-csharp. https://github.com/icfpcontest2020/starterkit-csharp/blob/master/app/Program.cs

+16 -1

0 comment

1 changed file

nya3jp

pr closed time in 4 days

issue closedicfpcontest2020/dockerfiles

Need control of C++ build process / arguments

Hard-coding the C++ compiler command line is problematic for a number of reasons:

  • It is not possible to split the source code into multiple implementation (.cpp) files.
  • It is not possible to enable compiler optimizations (e.g. -O3).
  • It is not possible to select a more modern version of the C++ standard (e.g. -std=gnu++17).
  • It is not possible to link with any libraries. For example, talking to a server via HTTP practically requires the use of a library. The gcc image includes libcurl4-openssl-dev, but using it requires linking with -lcurl.

As an alternative, I recall a past contest where teams could supply two scripts, e.g. "build" and "run". The build script can invoke the compiler with any necessary arguments, or run a tool like "make", etc. The run script can run the program with any necessary arguments, environment variables, etc. If no special arguments are needed, the run script can just be the binary itself. I would also suggest copying an entire directory rather than just a single binary. The directory might contain the run script, the compiled binary, data files, shared libraries, etc.

I'll create a pull request along these lines if you are open to it.

closed time in 4 days

jeremysawicki

issue commenticfpcontest2020/dockerfiles

Add Elixir (and Erlang)

I've created a starterkit repo for Elixir: https://github.com/icfpcontest2020/starterkit-elixir/

JEG2

comment created time in 4 days

create barnchicfpcontest2020/starterkit-elixir

branch : master

created branch time in 4 days

created repositoryicfpcontest2020/starterkit-elixir

created time in 4 days

issue commenticfpcontest2020/dockerfiles

Add Elixir (and Erlang)

Considering all the other proposals for different platforms, I think you should do this:

  1. Use C++ Dockerfile and starterkit-cpp as an example of build and run process. You will find build and run shell scripts that serve as extension points to pass any arguments you like during the build and run time.

  2. Include all the necessary libraries for HTTP interaction and show a simple example of said interaction along the lines of starterkit-csharp. This should answer your question on purpose of command line arguments :-) Basically fetch URL that is passed as a first argument with a query parameter that is passed as a second argument. Exit with non-zero code on any non-200 status code returned.

JEG2

comment created time in 4 days

push eventicfpcontest2020/starterkit-rust

Alexey Kirpichnikov

commit sha 963e3cf82c71294602f1eb449c7112d935e4f622

Add a simple example app

view details

push time in 4 days

Pull request review commenticfpcontest2020/dockerfiles

Add generic platform

+# Customizable platform based on ubuntu:latest++## How to use generic platform:++1. Place your dependencies in `prepare_buld.sh` (you can skip it)+2. Place you build logic into `build.sh` (you can skip it)+3. Launch your code in `run.sh` (code will be located at `/source/`)+++## Build algorithm:++* a single file `./prepare_buld.sh` copied under `container:/source/prepare_buld.sh`

Typos in buld everywhere in this file.

last-g

comment created time in 4 days

push eventicfpcontest2020/starterkit-cpp

Jeremy Sawicki

commit sha 21af84f3caf1d9db84d99ee5e182419b07e5c4a6

C++ build and run scripts

view details

push time in 4 days

PR merged icfpcontest2020/starterkit-cpp

C++ build and run scripts

Support arbitrary build and run scripts for C++ (see https://github.com/icfpcontest2020/dockerfiles/issues/20)

+6 -0

0 comment

2 changed files

jeremysawicki

pr closed time in 4 days

push eventicfpcontest2020/dockerfiles

Jeremy Sawicki

commit sha 0906ae3653157e949252bc793c32570384546a7c

C++ build and run scripts

view details

push time in 4 days

PR merged icfpcontest2020/dockerfiles

C++ build and run scripts

Support arbitrary build and run scripts for C++ (see https://github.com/icfpcontest2020/dockerfiles/issues/20)

+4 -3

0 comment

1 changed file

jeremysawicki

pr closed time in 4 days

issue commenticfpcontest2020/dockerfiles

Need control of C++ build process / arguments

Yes, that sounds valid. We were going to do exactly that. Thanks for your help, I'll check out your pull requests.

jeremysawicki

comment created time in 4 days

issue commenticfpcontest2020/dockerfiles

Need C++ HTTP library

We're currently in the process of improving starter kits to show an example of HTTP interaction. See starterkit-csharp, for example. It will require us to add necessary libraries and resolve the issue that you mentioned.

We'll get to C++ eventually, but you can help if you have time.

jeremysawicki

comment created time in 4 days

issue commenticfpcontest2020/dockerfiles

Set up CI

As mentioned in #25, we have an internal CI that continuosly checks all starterkit repos against current Dockerfiles. But not PRs, you're right. I will consider setting up CI, thank you!

nya3jp

comment created time in 4 days

issue commenticfpcontest2020/dockerfiles

Monorepo for docker files and starter kits

It makes sense, but our current process more closely resembles actual contest situation: separate repository that contains team solution, separate repository that contains Dockerfiles. We have an internal CI that continuosly checks all starterkits against current Dockerfiles, so I can make sure everything works.

Your suggestion is valid though. I'll give it a thought.

Vlad-Shcherbina

comment created time in 4 days

push eventicfpcontest2020/dockerfiles

garasubo

commit sha 226d01e01c125b9a061c26103883bb436b06f401

add rust docker file

view details

push time in 4 days

PR merged icfpcontest2020/dockerfiles

add rust docker file

fix #6

+11 -0

2 comments

1 changed file

garasubo

pr closed time in 4 days

issue closedicfpcontest2020/dockerfiles

Add Rust (?)

Rust was declared as the programming tool of choice for discriminating hackers in 2018.

closed time in 4 days

igorlukanin

delete branch icfpcontest2020/starterkit-csharp

delete branch : http

delete time in 4 days

push eventicfpcontest2020/starterkit-csharp

Иван Дашкевич

commit sha d6ee35d7afdce3f9d481cbd21a8abfd4282d644a

Send sample http request

view details

push time in 4 days

issue commenticfpcontest2020/dockerfiles

Adding commonly used Haskell libraries

It's a small optimization. Runtime image does not contain any build dependencies, so it's smaller and easier to distribute among many worker nodes.

Actually, not so small: haskell:8.10.1 is 342MB, while debian:buster-20200607-slim is only 25MB.

If at all possible, please try to keep separate build and run images. Note that you are free to copy any files from your build image to your runtime image, not just one executable.

If it's too much trouble, I think we can tolerate extra image weight to make things simpler for you.

aergus

comment created time in 4 days

issue commenticfpcontest2020/dockerfiles

Is single source constraint hard?

@last-g I can promise you two things:

  1. We will consider adding run.sh and build.sh as extension points for all supported platforms.
  2. We will consider extending our starterkits to show an example of HTTP interaction and include all necessary libraries.

If you have a vision for a generic image that would suit your taste, please send a PR, and we will give it an honest consideration. I'm not against your ideas at all.

@elventian I can promise you one thing: this contest is much, much more than just pushing small snippets of code into remote repositories with Dockerfiles. But I can't tell you much more right now :-)

autotaker

comment created time in 4 days

IssuesEvent

issue commenticfpcontest2020/dockerfiles

Is single source constraint hard?

@last-g I appreciate your concern, but I don't think that our submission system is too restrictive as it is. Certainly not only-python-or-bash-is-usable restrictive.

Compare:

  • CodinGame allows you to sumbit only a single file, without any control over build mechanism.
  • Various Mail.Ru programming contests use similar scheme with fixed Dockerfiles.
  • ICFPC 2017 offered a single VM with several dozens compilers and frameworks installed. Yet organizers managed to somehow avoid dependency conflicts not just for a single language, but for all of them.

That said, I would very much appreciate someone to rewrite cpp platform using CMake instead of plain g++. I think it will provide all participants with plenty build configuration options.

But, of course, you can leave it as it is and submit binaries. Sigh.

autotaker

comment created time in 5 days

push eventicfpcontest2020/dockerfiles

Alexey Kirpichnikov

commit sha 219855347a1a11c488691b00233ac2956bfa43c7

doc: add READMEs

view details

push time in 5 days

push eventicfpcontest2020/dockerfiles

Alexey Kirpichnikov

commit sha 10f0e38afa7a14db81e7cc89b5bbc772ccfe71c9

go: Use specific compiler version

view details

push time in 5 days

push eventicfpcontest2020/dockerfiles

Shuhei Takahashi

commit sha 7837cc88fdeb527920df0065924fe7d4b6d00ca9

go: Update the target to align with starterkit

view details

push time in 5 days

push eventicfpcontest2020/starterkit-go

Shuhei Takahashi

commit sha 06f72fbe894e984ec2f250a698e1349402a5beeb

Initial files for the starter kit

view details

push time in 5 days

push eventicfpcontest2020/starterkit-bazel

Shuhei Takahashi

commit sha a3b9696fe73e575969502cb080ac5660a9cad57a

Initial files for the starter kit

view details

push time in 5 days

pull request commenticfpcontest2020/dockerfiles

add rust docker file

Nice! Can I bother you to write a sample Rust application that compiles correctly using your Docker image and outputs first two command line arguments to stdout (just like all other starter kits)?

Repo is here: https://github.com/icfpcontest2020/starterkit-rust/

garasubo

comment created time in 5 days

create barnchicfpcontest2020/starterkit-rust

branch : master

created branch time in 5 days

created repositoryicfpcontest2020/starterkit-rust

created time in 5 days

push eventicfpcontest2020/dockerfiles

Shuhei Takahashi

commit sha b7223432f60c998e1c6815a90db285fa60e09f0d

bazel: Update the target to align with starterkit-bazel c.f. https://github.com/icfpcontest2020/starterkit-bazel/pull/1

view details

push time in 5 days

more