|
1 | 1 | use chrono::{TimeZone, Utc};
|
2 |
| -use gix::{open::Error as OpenError, Repository}; |
3 |
| - |
4 |
| -thread_local! { |
5 |
| - static REPOSITORY: Result<Repository, OpenError> = gix::open("."); |
6 |
| -} |
7 | 2 |
|
8 | 3 | byond_fn!(fn rg_git_revparse(rev) {
|
9 |
| - REPOSITORY.with(|repo| -> Option<String> { |
10 |
| - let repo = repo.as_ref().ok()?; |
11 |
| - let object = repo.rev_parse_single(rev).ok()?; |
12 |
| - Some(object.to_string()) |
13 |
| - }) |
| 4 | + let repo = gix::open("."); |
| 5 | + let repo = repo.as_ref().ok()?; |
| 6 | + let object = repo.rev_parse_single(rev).ok()?; |
| 7 | + Some(object.to_string()) |
14 | 8 | });
|
15 | 9 |
|
16 | 10 | byond_fn!(fn rg_git_commit_date(rev) {
|
17 |
| - REPOSITORY.with(|repo| -> Option<String> { |
18 |
| - let repo = repo.as_ref().ok()?; |
19 |
| - let rev = repo.rev_parse_single(rev).ok()?; |
20 |
| - let object = rev.object().ok()?; |
21 |
| - let commit = object.try_into_commit().ok()?; |
22 |
| - let commit_time = commit.committer().ok()?.time; |
23 |
| - let datetime = Utc.timestamp_opt(commit_time.seconds, 0).latest()?; |
24 |
| - Some(datetime.format("%F").to_string()) |
25 |
| - }) |
| 11 | + let repo = gix::open("."); |
| 12 | + let repo = repo.as_ref().ok()?; |
| 13 | + let rev = repo.rev_parse_single(rev).ok()?; |
| 14 | + let object = rev.object().ok()?; |
| 15 | + let commit = object.try_into_commit().ok()?; |
| 16 | + let commit_time = commit.committer().ok()?.time; |
| 17 | + let datetime = Utc.timestamp_opt(commit_time.seconds, 0).latest()?; |
| 18 | + Some(datetime.format("%F").to_string()) |
26 | 19 | });
|
0 commit comments