refactor: rename project from remind_sync to ical2rem
- Rename executable public_name and package name from remind_sync to ical2rem - Update dune-project with new name, source URI, maintainer, synopsis, description, and tags - Add dune-build-info dependency and use Build_info to generate the version string at build time instead of the %%VERSION%% placeholder - Add pinned dependencies to ical2rem.opam - Remove remind_sync.opam - Bump dune lang version from 3.20 to 3.23
This commit is contained in:
@@ -1,6 +1,11 @@
|
|||||||
open Cmdliner
|
open Cmdliner
|
||||||
open Cmdliner.Term.Syntax
|
open Cmdliner.Term.Syntax
|
||||||
|
|
||||||
|
let version_string () =
|
||||||
|
match Build_info.V1.version () with
|
||||||
|
| None -> "dev"
|
||||||
|
| Some v -> Build_info.V1.Version.to_string v
|
||||||
|
|
||||||
let files =
|
let files =
|
||||||
let doc = "Files to process" in
|
let doc = "Files to process" in
|
||||||
Arg.(non_empty & pos_all string [] & info [] ~docv:"FILE" ~doc)
|
Arg.(non_empty & pos_all string [] & info [] ~docv:"FILE" ~doc)
|
||||||
@@ -12,7 +17,7 @@ let timezone =
|
|||||||
let main_command f =
|
let main_command f =
|
||||||
let doc = "Convert iCalendar files to remind format" in
|
let doc = "Convert iCalendar files to remind format" in
|
||||||
let man = [] in
|
let man = [] in
|
||||||
Cmd.make (Cmd.info "ical2rem" ~version:"%%VERSION%%" ~doc ~man)
|
Cmd.make (Cmd.info "ical2rem" ~version:(version_string ()) ~doc ~man)
|
||||||
@@
|
@@
|
||||||
let+ files = files and+ tz = timezone in
|
let+ files = files and+ tz = timezone in
|
||||||
f tz files
|
f tz files
|
||||||
|
|||||||
3
bin/dune
3
bin/dune
@@ -1,10 +1,11 @@
|
|||||||
(executable
|
(executable
|
||||||
(public_name remind_sync)
|
(public_name ical2rem)
|
||||||
(name main)
|
(name main)
|
||||||
(modules main commandLine remind eventPredicates utils windows_tz)
|
(modules main commandLine remind eventPredicates utils windows_tz)
|
||||||
(preprocess
|
(preprocess
|
||||||
(pps ppx_deriving.show))
|
(pps ppx_deriving.show))
|
||||||
(libraries
|
(libraries
|
||||||
|
dune-build-info
|
||||||
cmdliner
|
cmdliner
|
||||||
icalendar
|
icalendar
|
||||||
timedesc-tzdb.full
|
timedesc-tzdb.full
|
||||||
|
|||||||
45
dune-project
45
dune-project
@@ -1,24 +1,49 @@
|
|||||||
(lang dune 3.20)
|
(lang dune 3.23)
|
||||||
|
|
||||||
(name remind_sync)
|
(name ical2rem)
|
||||||
|
|
||||||
(generate_opam_files true)
|
(generate_opam_files true)
|
||||||
|
|
||||||
(source
|
(source
|
||||||
(uri https://git.donadeo.net/pdonadeo/remind-sync))
|
(uri https://git.donadeo.net/pdonadeo/ical2rem))
|
||||||
|
|
||||||
(authors "Paolo Donadeo <paolo@donadeo.net>")
|
(authors "Paolo Donadeo <paolo@donadeo.net>")
|
||||||
|
|
||||||
(maintainers "Maintainer Name <maintainer@example.com>")
|
(maintainers "Paolo Donadeo <paolo@donadeo.net>")
|
||||||
|
|
||||||
(license MIT)
|
(license MIT)
|
||||||
|
|
||||||
(documentation https://git.donadeo.net/pdonadeo/remind-sync)
|
(documentation https://git.donadeo.net/pdonadeo/ical2rem)
|
||||||
|
|
||||||
(package
|
(package
|
||||||
(name remind_sync)
|
(name ical2rem)
|
||||||
(synopsis "A short synopsis")
|
(synopsis "Convert iCalendar (.ics) files to Remind (.rem) format")
|
||||||
(description "A longer description")
|
(description
|
||||||
(depends ocaml)
|
"ical2rem reads iCalendar (.ics) files and produces reminders in the Remind format. It handles recurring events, exceptions (EXDATE/RECURRENCE-ID), alarms (VALARM), timezones, and Windows timezone names.")
|
||||||
|
(depends
|
||||||
|
(ocaml
|
||||||
|
(= 5.4.1))
|
||||||
|
(timedesc
|
||||||
|
(= 3.1.0))
|
||||||
|
(timedesc-tzdb
|
||||||
|
(= 3.1.0))
|
||||||
|
(timedesc-tzlocal
|
||||||
|
(= 3.1.0))
|
||||||
|
(ppx_deriving
|
||||||
|
(= 6.1.1))
|
||||||
|
(icalendar
|
||||||
|
(= 0.1.13))
|
||||||
|
(dune
|
||||||
|
(and
|
||||||
|
:dev
|
||||||
|
(= 3.23.1)))
|
||||||
|
(ocamlformat
|
||||||
|
(and
|
||||||
|
:dev
|
||||||
|
(= 0.29.0)))
|
||||||
|
(ocaml-lsp-server
|
||||||
|
(and
|
||||||
|
:dev
|
||||||
|
(= 1.26.0))))
|
||||||
(tags
|
(tags
|
||||||
("add topics" "to describe" your project)))
|
(icalendar remind calendar ics rem converter)))
|
||||||
|
|||||||
38
ical2rem.opam
Normal file
38
ical2rem.opam
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
# This file is generated by dune, edit dune-project instead
|
||||||
|
opam-version: "2.0"
|
||||||
|
synopsis: "Convert iCalendar (.ics) files to Remind (.rem) format"
|
||||||
|
description:
|
||||||
|
"ical2rem reads iCalendar (.ics) files and produces reminders in the Remind format. It handles recurring events, exceptions (EXDATE/RECURRENCE-ID), alarms (VALARM), timezones, and Windows timezone names."
|
||||||
|
maintainer: ["Paolo Donadeo <paolo@donadeo.net>"]
|
||||||
|
authors: ["Paolo Donadeo <paolo@donadeo.net>"]
|
||||||
|
license: "MIT"
|
||||||
|
tags: ["icalendar" "remind" "calendar" "ics" "rem" "converter"]
|
||||||
|
doc: "https://git.donadeo.net/pdonadeo/ical2rem"
|
||||||
|
depends: [
|
||||||
|
"ocaml" {= "5.4.1"}
|
||||||
|
"timedesc" {= "3.1.0"}
|
||||||
|
"timedesc-tzdb" {= "3.1.0"}
|
||||||
|
"timedesc-tzlocal" {= "3.1.0"}
|
||||||
|
"ppx_deriving" {= "6.1.1"}
|
||||||
|
"icalendar" {= "0.1.13"}
|
||||||
|
"dune" {>= "3.23" & dev & = "3.23.1"}
|
||||||
|
"ocamlformat" {dev & = "0.29.0"}
|
||||||
|
"ocaml-lsp-server" {dev & = "1.26.0"}
|
||||||
|
"odoc" {with-doc}
|
||||||
|
]
|
||||||
|
build: [
|
||||||
|
["dune" "subst"] {dev}
|
||||||
|
[
|
||||||
|
"dune"
|
||||||
|
"build"
|
||||||
|
"-p"
|
||||||
|
name
|
||||||
|
"-j"
|
||||||
|
jobs
|
||||||
|
"@install"
|
||||||
|
"@runtest" {with-test}
|
||||||
|
"@doc" {with-doc}
|
||||||
|
]
|
||||||
|
]
|
||||||
|
dev-repo: "https://git.donadeo.net/pdonadeo/ical2rem"
|
||||||
|
x-maintenance-intent: ["(latest)"]
|
||||||
@@ -1,30 +0,0 @@
|
|||||||
# This file is generated by dune, edit dune-project instead
|
|
||||||
opam-version: "2.0"
|
|
||||||
synopsis: "A short synopsis"
|
|
||||||
description: "A longer description"
|
|
||||||
maintainer: ["Maintainer Name <maintainer@example.com>"]
|
|
||||||
authors: ["Paolo Donadeo <paolo@donadeo.net>"]
|
|
||||||
license: "MIT"
|
|
||||||
tags: ["add topics" "to describe" "your" "project"]
|
|
||||||
doc: "https://git.donadeo.net/pdonadeo/remind-sync"
|
|
||||||
depends: [
|
|
||||||
"dune" {>= "3.20"}
|
|
||||||
"ocaml"
|
|
||||||
"odoc" {with-doc}
|
|
||||||
]
|
|
||||||
build: [
|
|
||||||
["dune" "subst"] {dev}
|
|
||||||
[
|
|
||||||
"dune"
|
|
||||||
"build"
|
|
||||||
"-p"
|
|
||||||
name
|
|
||||||
"-j"
|
|
||||||
jobs
|
|
||||||
"@install"
|
|
||||||
"@runtest" {with-test}
|
|
||||||
"@doc" {with-doc}
|
|
||||||
]
|
|
||||||
]
|
|
||||||
dev-repo: "https://git.donadeo.net/pdonadeo/remind-sync"
|
|
||||||
x-maintenance-intent: ["(latest)"]
|
|
||||||
Reference in New Issue
Block a user