Skip to content

Commit

Permalink
Added dependency information
Browse files Browse the repository at this point in the history
  • Loading branch information
benfortuna committed Sep 13, 2015
1 parent a04ef6f commit 24db50e
Show file tree
Hide file tree
Showing 2 changed files with 50 additions and 30 deletions.
40 changes: 10 additions & 30 deletions README.md
@@ -1,8 +1,6 @@
[![Build Status](https://drone.io/github.com/ical4j/ical4j/status.png)](https://drone.io/github.com/ical4j/ical4j/latest) [![Gitter](https://badges.gitter.im/Join Chat.svg)](https://gitter.im/ical4j/ical4j?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

========================
iCal4j - Release Notes
========================
# iCal4j - Release Notes

- For a concise description of the goals and directions of iCal4j please
take a look at docs/index.html.
Expand All @@ -18,21 +16,13 @@
be compatible with prior versions of eclipse.


=====================
System Requirements
=====================
## Dependencies

- Java 5 or later

- commons-codec
- commons-lang3
- slf4j/jcl-over-slf4j
- junit (for unit testing only)
- Java 6 or later

See [here](docs/Dependencies.md) for further details.

=======================
How to build - Maven2
=======================
## How to build - Maven2

After installing Maven2 and adding to your path, you need to modify your local
profiles http://wiki.modularity.net.au/ical4j/index.php?title=Maven2. Then
Expand All @@ -46,9 +36,7 @@
are generated in the 'target' directory.


====================
How to build - Ant
====================
## How to build - Ant

If you have downloaded the source distribution, you should be able to package a JAR
file simply by running ant in the root directory. e.g:
Expand All @@ -63,9 +51,7 @@



=================
Relaxed Parsing
=================
## Relaxed Parsing

iCal4j now has the capability to "relax" its parsing rules to enable parsing of
*.ics files that don't properly conform to the iCalendar specification (RFC2445)
Expand Down Expand Up @@ -126,9 +112,7 @@
net.fortuna.ical4j.util.CompatibilityHints.


======================
iCal4j and Timezones
======================
## iCal4j and Timezones

Supporting timezones in an iCalendar implementation can be a complicated process,
mostly due to the fact that there is not a definitive list of timezone definitions
Expand Down Expand Up @@ -159,9 +143,7 @@
on output of the calendar) you will be notified if the changes are invalid.


============================
Pre-Java 1.4 Compatibility
============================
## Pre-Java 1.4 Compatibility

Choosing Java 1.4 as the minimum required JVM was initially slightly arbitrary, and
probably based on the fact that most people were using 1.4 as a minimum.
Expand All @@ -178,9 +160,7 @@
(as these APIs aren't available).


=================
Redistribution:
=================
## Redistribution:

If you intend to use and distribute iCal4j in your own project please
follow these very simple guidelines:
Expand Down
40 changes: 40 additions & 0 deletions docs/Dependencies.md
@@ -0,0 +1,40 @@
# iCal4j Dependencies

In the interests of portability and compatibility with as many environments as possible, the number of dependent
libraries for iCal4j is kept to a minimum. The following describes the required (and optional) dependencies and the
functionality they provide.

## slf4j-api [required]

A logging meta-library with integration to different logging framework implementations.

Used in all classes that require logging.

## commons-lang3 [required]

Provides enhancements to the standard Java library, including support for custom `equals()` and `hashcode()`
implementations.

Used in all classes requiring custom equality implementations.

## commons-collections4 [required]

Provides enhancements to the standard Java collections API, including support for closures.

Used in `net.fortuna.ical4j.validate.Validator` implementations to reduce the duplication of code in validity checks.

## commons-codec [optional]

Provides support for encoding and decoding binary data in text form.

Used in `net.fortuna.ical4j.model.property.Attach`

## groovy-all [optional]

The runtime for the Groovy language. Required for library enhancements such as iCalendar object construction using
the `net.fortuna.ical4j.model.ContentBuilder` DSL. This library is optional for all non-Groovy features of iCal4j.

## bndlib [optional]

A tool for generating OSGi library metadata and packaging OSGi bundles. This library is not a runtime requirement, and
is used only to generate version information in the javadoc API documentation.

0 comments on commit 24db50e

Please sign in to comment.