Skip to content

Commit

Permalink
import JuliaHub.jl
Browse files Browse the repository at this point in the history
  • Loading branch information
mortenpi committed Jun 20, 2023
0 parents commit 8a7d1bf
Show file tree
Hide file tree
Showing 93 changed files with 11,217 additions and 0 deletions.
26 changes: 26 additions & 0 deletions .JuliaFormatter.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
style = "blue"
indent = 4
margin = 100
always_for_in = "nothing"
whitespace_typedefs = true
whitespace_ops_in_indices = true
remove_extra_newlines = false
import_to_using = false
pipe_to_function_call = false
short_to_long_function_def = false
always_use_return = false
whitespace_in_kwargs = false
annotate_untyped_fields_with_any = false
format_docstrings = false
align_struct_field = true
align_assignment = true
align_conditional = true
align_pair_arrow = true
conditional_to_if = false
normalize_line_endings = "auto"
align_matrix = false
join_lines_based_on_source = true
trailing_comma = true
indent_submodule = true
# jobs.jl is ignored due to a parsing error: https://github.com/julia-vscode/CSTParser.jl/issues/371
ignore = [".git", "test/jobs.jl"]
27 changes: 27 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
name: Bug report
about: Report a bug or a crash to help us improve the JuliaHub.jl package
labels: 'bug'
---

**Description of the bug and expected behavior**

<!--
* Please provide a clear and concise description of what the bug is.
* If applicable, please indicate what the expected behaviour would be.
* If you are seeing an error, please include the full error messages and stacktraces.
-->

**To Reproduce**

<!-- Please include a list of steps to reproduce the issue. -->

**Environment**

<!-- If you're not using the latest JuliaHub.jl version, please try with an updated version. -->

- **Is this happening locally, in a JuliaHub IDE, or in a JuliaHub batch job?**
- **JuliaHub.jl version:**
- **Relevant JuliaHub instance:** `juliahub.com`
- **Julia version:**
- **Operating system:**
5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
name: Feature request
about: Suggest a feature or enhancement idea that for the JuliaHub.jl package
labels: 'enhancement'
---
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
/Manifest.toml
/docs/build/
#/docs/Manifest.toml
/test/testdata/large.dat
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Release notes

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## Version v0.1.0 - 2023-06-20

Initial package release.
21 changes: 21 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2023 JuliaHub, Inc. and contributors

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
41 changes: 41 additions & 0 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name = "JuliaHub"
uuid = "bc7fa6ce-b75e-4d60-89ad-56c957190b6e"
authors = ["JuliaHub Inc."]
version = "0.1.0"

[deps]
Base64 = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f"
Dates = "ade2ca70-3891-5945-98fb-dc099432e06a"
Glob = "c27321d9-0574-5035-807b-f59d2c89b15c"
HTTP = "cd3eb016-35fb-5094-929b-558a96fad6f3"
JSON = "682c06a0-de6a-54ab-a142-c8b1cf79cde6"
Mocking = "78c3b35d-d492-501b-9361-3d52fe80e533"
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
PkgAuthentication = "4722fa14-9d28-45f9-a1e2-a38605bd88f0"
Printf = "de0858da-6303-5e67-8744-51eddeeeb8d7"
Rclone_jll = "d3707c4a-c138-5086-90bb-c65de4e50315"
SHA = "ea8e919c-243c-51af-8825-aaa63cd721ce"
TOML = "fa267f1f-6049-4f14-aa54-33bafae1ed76"
Tar = "a4e569a6-e804-4fa4-b0f3-eef7a1d5b13e"
TimeZones = "f269a46b-ccf7-5d73-abea-4c690281aa53"
URIs = "5c2747f8-b7ea-4ff2-ba2e-563bfd36b1d4"
UUIDs = "cf7118a7-6976-5b1a-9a39-7adc72f591a4"

[compat]
Glob = "1"
HTTP = "1"
JSON = "0.20, 0.21"
Mocking = "0.7"
PkgAuthentication = "2"
Rclone_jll = "1.60"
TimeZones = "1"
URIs = "1"
julia = "1.6"

[extras]
Logging = "56ddb016-857b-54e1-b83d-db4d58db5568"
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"

[targets]
test = ["Logging", "Random", "Test"]
63 changes: 63 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# JuliaHub.jl ![BETA][beta-badge]

<!-- [![Version][jh-version-img]][jh-version-url] -->
[![][docs-stable-img]][docs-stable-url]
[![][gha-img]][gha-url]
<!-- [![][codecov-img]][codecov-url] -->

A Julia client for the [JuliaHub platform][juliahub-com] APIs.
It allows you to programmatically interact with the platform to, for example, upload or download datasets, start jobs, and so on.

The package is an open-source and available in the [Julia General registry](https://github.com/JuliaRegistries/General), and can simply be installed via the package manager.

```
pkg> add JuliaHub
```

To get started, you must first authenticate with a JuliaHub instance.
The package can be used to interact with both `juliahub.com` and enterprise instances.

```julia
using JuliaHub
JuliaHub.authenticate("juliahub.com")
```

Once your session is authenticated, you can start interacting with the JuliaHub instance.
For example, to list datasets you can call `JuliaHub.datasets()` or to upload a new dataset you can call

```julia
JuliaHub.upload_dataset("my-new-dataset", "local/file.csv")
```

Or you can also start JuliaHub jobs to offload computations to the cloud.

```julia
JuliaHub.submit_job(
JuliaHub.script"""
Hello JuliaHub!
"""
)
```

See [the documentation over at `help.juliahub.com`][docs-stable-url] for a more information on usage, guides, tutorials, and the reference manual.
If you are curious about changes and updates that new version have brought, see the [CHANGELOG][docs-stable-changelog-url].


[juliahub-com]: http://juliahub.com/

[beta-badge]: https://img.shields.io/badge/-BETA-blue.svg

[jh-version-img]: https://juliahub.com/docs/JuliaHub/version.svg
[jh-version-url]: https://juliahub.com/ui/Packages/JuliaHub/...

[docs-stable-img]: https://img.shields.io/badge/docs-help.juliahub.com-blue.svg
[docs-stable-url]: https://help.juliahub.com/julia-client/stable
[docs-stable-changelog-url]: https://help.juliahub.com/julia-client/stable/CHANGELOG/

[gha-img]: https://github.com/JuliaComputing/JuliaHub.jl/workflows/CI/badge.svg
[gha-url]: https://github.com/JuliaComputing/JuliaHub.jl/actions?query=workflows/CI

<!--
[codecov-img]: https://codecov.io/gh/JuliaComputing/JuliaHub.jl/branch/main/graph/badge.svg
[codecov-url]: https://codecov.io/gh/JuliaComputing/JuliaHub.jl
-->
Loading

0 comments on commit 8a7d1bf

Please sign in to comment.