n-scala alternatives and similar packages
Based on the "Extensions" category.
Alternatively, view n-scala alternatives based on common mentions on social networks and blogs.
-
Enumeratum
A type-safe, reflection-free, powerful enumeration implementation for Scala with exhaustive pattern match warnings and helpful integrations. -
Scala Graph
Graph for Scala is intended to provide basic graph functionality seamlessly fitting into the Scala Collection Library. Like the well known members of scala.collection, Graph for Scala is an in-memory graph library aiming at editing and traversing graphs, finding cycles etc. in a user-friendly way. -
scribe
The fastest logging library in the world. Built from scratch in Scala and programmatically configurable. -
Rapture
DISCONTINUED. a collection of libraries for common, everyday programming tasks (I/O, JSON, i18n, etc.) -
Lamma
Lamma schedule generator for Scala is a professional schedule generation library for periodic schedules like fixed income coupon payment, equity deravitive fixing date generation etc. -
wvlet-log
DISCONTINUED. A library for enhancing your application logs with colors and source code locations. -
Resolvable
DISCONTINUED. A library to optimize fetching immutable data structures from several endpoints in several formats.
SaaSHub - Software Alternatives and Reviews
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of n-scala or a related project?
README
nscala-time
A new Scala wrapper for Joda Time. This project forked from scala-time since it seems that scala-time is no longer maintained.
Installation
Add the following to your sbt build:
libraryDependencies += "com.github.nscala-time" %% "nscala-time" % "2.28.0"
if you want to use previous versions, you can find it from here
Release Note
2.18.0
2.16.0
2.14.0
2.12.0
- change private
RichString#toOption
method - Drop Scala 2.9.3 support
- use
FiniteDuration
instead ofDuration
- joda-time 2.9.3
2.10.0
- adding the flexibility to include format for local date and date time. See scaladoc
2.8.0
2.6.0
2.4.0
2.2.0
- joda-time 2.8.2
- Add parentheses to methods which are not purely-functional
object BuilderImplicits
should not extendstrait Implicits
2.0.0
1.8.0
- Add method to convert an interval into a collection
- joda-time 2.7
- Add arithmetic and others methods to Duration, Interval, and Period
1.6.0
- joda-time 2.5
- drop Scala 2.9.1 and 2.9.2 support
- conversion to and from scala std duration
- Added static method wrappers
1.4.0
- joda-time 2.4 support
1.2.0
- Remove implicit DateMidnightOrdering
- Add toInterval to RichString
- Add millis method to RichDateTime
- Remove deprecated class RichMidnight
- Make DurationBuilder public
1.0.0
- Binaries compiled with Scala 2.11.0 are included.
- https://github.com/nscala-time/nscala-time/pull/53
0.8.0
Binaries compiled with Scala 2.11.0-M8 are included.
0.6.0
Two major changes has been introduced in 0.6.0:
Although I believe that these changes don't break your code, if you have some problems, don't mind reporting the problem to issues.
Version Numbering Policy
x.y.z
, each letter is digit, format is used as version number. Meanings of x
is not determined yet.
y
means major-version. Note that y
is even number in any version of released nscala-time
. If y
is odd,
it's development and/or SNAPSHOT version. z
is mainly used for bug fix releases. Currently, the value of z
is 0
in most cases.
Usage
This is mostly a convenience wrapper around the Joda Time libraries, adding
more pleasant syntax like operators for addition, subtraction, and comparison.
Also, most fields usually available as getField
are now simply available as
field
, following the Scala convention. Some instances of asX
or toX
have
also been shortened.
Import
import com.github.nscala_time.time.Imports._
Date/Time Operations
DateTime.now() + 2.months // returns org.joda.time.DateTime = 2009-06-27T13:25:59.195-07:00
DateTime.nextMonth < DateTime.now() + 2.months // returns Boolean = true
DateTime.now() to DateTime.tomorrow // return org.joda.time.Interval = > 2009-04-27T13:47:14.840/2009-04-28T13:47:14.840
(DateTime.now() to DateTime.nextSecond).millis // returns Long = 1000
2.hours + 45.minutes + 10.seconds
// returns com.github.nscala_time.time.DurationBuilder
// (can be used as a Duration or as a Period)
(2.hours + 45.minutes + 10.seconds).millis
// returns Long = 9910000
2.months + 3.days
// returns Period
Fluent interface
DateTime.now() // returns org.joda.time.DateTime = 2009-04-27T13:25:42.659-07:00
DateTime.now().hour(2).minute(45).second(10) // returns org.joda.time.DateTime = 2009-04-27T02:45:10.313-07:00
Please see Joda Time for full explanation of key concepts and API: https://www.joda.org/joda-time/
Documents
Documentation of joda-time will be also a help.
Motivation
The Java Date and Calendar libraries are largely inadequate. They are mutable, not thread-safe, and very inconvenient to use.
The Joda Time library is a great replacement for Java's Date and Calendar classes. They're immutable by default, have a much richer and nicer API, and can easily be converted to Java's Date and Calendar classes when necessary.
This project provides a thin layer of convenience around the Joda Time libraries, making them more idiomatic to use within Scala.