[jira] [Updated] (JOSHUA-275) Revamp the Configuration System

2016-06-20 Thread Lewis John McGibbney (JIRA)

 [ 
https://issues.apache.org/jira/browse/JOSHUA-275?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lewis John McGibbney updated JOSHUA-275:

Fix Version/s: (was: 6,2)
   6.2

> Revamp the Configuration System
> ---
>
> Key: JOSHUA-275
> URL: https://issues.apache.org/jira/browse/JOSHUA-275
> Project: Joshua
>  Issue Type: Improvement
>Affects Versions: 6.1, 6.2, 7
>Reporter: Kellen Sunderland
> Fix For: 6.2
>
>
> I'd like to propose we centralize Joshua's configuration system to make use 
> of typesafe/config https://github.com/typesafehub/config .  This config 
> system looks like JSON but with comments so it's easy to read.  Because it's 
> JSON it supports hierarchies of configurations, lists of configuration etc 
> quite easily.  It has some nice features like parsing time automatically.  
> The main advantage here though is that we have a standard config system that 
> doesn't have to be manually parsed.
> Here's a quick example of how we can use it:
> {code:java}
> @Inject
> public PackedGrammar(@TypesafeConfig("PackedGrammar.grammar_dir")
>  String grammar_dir,
>  @TypesafeConfig("PackedGrammar.span_limit")
>  int span_limit, 
>  String owner, 
>  String type) throws FileNotFoundException, 
> IOException ...
> {code}
> and then a config similar to
> \# Joshua configuration file
> {code:javascript}
> config = {
> default-non-terminal = X
> goal-symbol = GOAL
> ...
> 
> PackedGrammar: {
> type: thrax,
> grammar_dir: /local/grammars/...
> span_limit: 50
> }
> ...
> }
> {code}
> Version: TBD, but it's a breaking change so we may consider putting it in 
> Joshua 7.
> Totally open to other config / injection systems if others want to suggest 
> any of their favorites.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (JOSHUA-275) Revamp the Configuration System

2016-06-20 Thread Lewis John McGibbney (JIRA)

 [ 
https://issues.apache.org/jira/browse/JOSHUA-275?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lewis John McGibbney updated JOSHUA-275:

Fix Version/s: 6,2

> Revamp the Configuration System
> ---
>
> Key: JOSHUA-275
> URL: https://issues.apache.org/jira/browse/JOSHUA-275
> Project: Joshua
>  Issue Type: Improvement
>Affects Versions: 6.1, 6.2, 7
>Reporter: Kellen Sunderland
> Fix For: 6,2
>
>
> I'd like to propose we centralize Joshua's configuration system to make use 
> of typesafe/config https://github.com/typesafehub/config .  This config 
> system looks like JSON but with comments so it's easy to read.  Because it's 
> JSON it supports hierarchies of configurations, lists of configuration etc 
> quite easily.  It has some nice features like parsing time automatically.  
> The main advantage here though is that we have a standard config system that 
> doesn't have to be manually parsed.
> Here's a quick example of how we can use it:
> {code:java}
> @Inject
> public PackedGrammar(@TypesafeConfig("PackedGrammar.grammar_dir")
>  String grammar_dir,
>  @TypesafeConfig("PackedGrammar.span_limit")
>  int span_limit, 
>  String owner, 
>  String type) throws FileNotFoundException, 
> IOException ...
> {code}
> and then a config similar to
> \# Joshua configuration file
> {code:javascript}
> config = {
> default-non-terminal = X
> goal-symbol = GOAL
> ...
> 
> PackedGrammar: {
> type: thrax,
> grammar_dir: /local/grammars/...
> span_limit: 50
> }
> ...
> }
> {code}
> Version: TBD, but it's a breaking change so we may consider putting it in 
> Joshua 7.
> Totally open to other config / injection systems if others want to suggest 
> any of their favorites.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (JOSHUA-275) Revamp the Configuration System

2016-05-27 Thread Kellen Sunderland (JIRA)

 [ 
https://issues.apache.org/jira/browse/JOSHUA-275?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kellen Sunderland updated JOSHUA-275:
-
Description: 
I'd like to propose we centralize Joshua's configuration system to make use of 
typesafe/config https://github.com/typesafehub/config .  This config system 
looks like JSON but with comments so it's easy to read.  Because it's JSON it 
supports hierarchies of configurations, lists of configuration etc quite 
easily.  It has some nice features like parsing time automatically.  The main 
advantage here though is that we have a standard config system that doesn't 
have to be manually parsed.

Here's a quick example of how we can use it:

{code:java}
@Inject
public PackedGrammar(@TypesafeConfig("PackedGrammar.grammar_dir")
 String grammar_dir,
 @TypesafeConfig("PackedGrammar.span_limit")
 int span_limit, 
 String owner, 
 String type) throws FileNotFoundException, IOException 
...
{code}

and then a config similar to

\# Joshua configuration file
{code:javascript}
config = {
default-non-terminal = X
goal-symbol = GOAL
...

PackedGrammar: {
type: thrax,
grammar_dir: /local/grammars/...
span_limit: 50
}
...
}
{code}

Version: TBD, but it's a breaking change so we may consider putting it in 
Joshua 7.

Totally open to other config / injection systems if others want to suggest any 
of their favorites.

  was:
I'd like to propose we centralize Joshua's configuration system to make use of 
typesafe/config https://github.com/typesafehub/config .  This config system 
looks like JSON but with comments so it's easy to read.  Because it's JSON it 
supports hierarchies of configurations, lists of configuration etc quite 
easily.  It has some nice features like parsing time automatically.  The main 
advantage here though is that we have a standard config system that doesn't 
have to be manually parsed.

Here's a quick example of how we can use it:

@Inject
public PackedGrammar(@TypesafeConfig("PackedGrammar.grammar_dir")
 String grammar_dir,
 @TypesafeConfig("PackedGrammar.span_limit")
 int span_limit, 
 String owner, 
 String type) throws FileNotFoundException, IOException 
...

and then a config similar to

\# Joshua configuration file
config = {
default-non-terminal = X
goal-symbol = GOAL
...

PackedGrammar: {
type: thrax,
grammar_dir: /local/grammars/...
span_limit: 50
}
...
}

Version: TBD, but it's a breaking change so we may consider putting it in 
Joshua 7.

Totally open to other config / injection systems if others want to suggest any 
of their favorites.


> Revamp the Configuration System
> ---
>
> Key: JOSHUA-275
> URL: https://issues.apache.org/jira/browse/JOSHUA-275
> Project: Joshua
>  Issue Type: Improvement
>Affects Versions: 6.1, 6.2, 7
>Reporter: Kellen Sunderland
>
> I'd like to propose we centralize Joshua's configuration system to make use 
> of typesafe/config https://github.com/typesafehub/config .  This config 
> system looks like JSON but with comments so it's easy to read.  Because it's 
> JSON it supports hierarchies of configurations, lists of configuration etc 
> quite easily.  It has some nice features like parsing time automatically.  
> The main advantage here though is that we have a standard config system that 
> doesn't have to be manually parsed.
> Here's a quick example of how we can use it:
> {code:java}
> @Inject
> public PackedGrammar(@TypesafeConfig("PackedGrammar.grammar_dir")
>  String grammar_dir,
>  @TypesafeConfig("PackedGrammar.span_limit")
>  int span_limit, 
>  String owner, 
>  String type) throws FileNotFoundException, 
> IOException ...
> {code}
> and then a config similar to
> \# Joshua configuration file
> {code:javascript}
> config = {
> default-non-terminal = X
> goal-symbol = GOAL
> ...
> 
> PackedGrammar: {
> type: thrax,
> grammar_dir: /local/grammars/...
> span_limit: 50
> }
> ...
> }
> {code}
> Version: TBD, but it's a breaking change so we may consider putting it in 
> Joshua 7.
> Totally open to other config / injection systems if others want to suggest 
> any of their favorites.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (JOSHUA-275) Revamp the Configuration System

2016-05-27 Thread Kellen Sunderland (JIRA)

 [ 
https://issues.apache.org/jira/browse/JOSHUA-275?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kellen Sunderland updated JOSHUA-275:
-
Description: 
I'd like to propose we centralize Joshua's configuration system to make use of 
typesafe/config https://github.com/typesafehub/config .  This config system 
looks like JSON but with comments so it's easy to read.  Because it's JSON it 
supports hierarchies of configurations, lists of configuration etc quite 
easily.  It has some nice features like parsing time automatically.  The main 
advantage here though is that we have a standard config system that doesn't 
have to be manually parsed.

Here's a quick example of how we can use it:

@Inject
public PackedGrammar(@TypesafeConfig("PackedGrammar.grammar_dir")
 String grammar_dir,
 @TypesafeConfig("PackedGrammar.span_limit")
 int span_limit, 
 String owner, 
 String type) throws FileNotFoundException, IOException 
...

and then a config similar to

\# Joshua configuration file
config = {
default-non-terminal = X
goal-symbol = GOAL
...

PackedGrammar: {
type: thrax,
grammar_dir: /local/grammars/...
span_limit: 50
}
...
}

Version: TBD, but it's a breaking change so we may consider putting it in 
Joshua 7.

Totally open to other config / injection systems if others want to suggest any 
of their favorites.

  was:
I'd like to propose we centralize Joshua's configuration system to make use of 
typesafe/config https://github.com/typesafehub/config .  This config system 
looks like JSON but with comments so it's easy to read.  Because it's JSON it 
supports hierarchies of configurations, lists of configuration etc quite 
easily.  It has some nice features like parsing time automatically.  The main 
advantage here though is that we have a standard config system that doesn't 
have to be manually parsed.

Here's a quick example of how we can use it:

@Inject
public PackedGrammar(@TypesafeConfig("PackedGrammar.grammar_dir")
 String grammar_dir,
 @TypesafeConfig("PackedGrammar.span_limit")
 int span_limit, 
 String owner, 
 String type) throws FileNotFoundException, IOException 
...

and then a config similar to

\# Joshua configuration file
config = {
default-non-terminal = X
goal-symbol = GOAL
...

tm: {
type: thrax,
grammar_dir: /local/grammars/...
span_limit: 50
}
...
}

Version: TBD, but it's a breaking change so we may consider putting it in 
Joshua 7.

Totally open to other config / injection systems if others want to suggest any 
of their favorites.


> Revamp the Configuration System
> ---
>
> Key: JOSHUA-275
> URL: https://issues.apache.org/jira/browse/JOSHUA-275
> Project: Joshua
>  Issue Type: Improvement
>Affects Versions: 6.1, 6.2, 7
>Reporter: Kellen Sunderland
>
> I'd like to propose we centralize Joshua's configuration system to make use 
> of typesafe/config https://github.com/typesafehub/config .  This config 
> system looks like JSON but with comments so it's easy to read.  Because it's 
> JSON it supports hierarchies of configurations, lists of configuration etc 
> quite easily.  It has some nice features like parsing time automatically.  
> The main advantage here though is that we have a standard config system that 
> doesn't have to be manually parsed.
> Here's a quick example of how we can use it:
> @Inject
> public PackedGrammar(@TypesafeConfig("PackedGrammar.grammar_dir")
>  String grammar_dir,
>  @TypesafeConfig("PackedGrammar.span_limit")
>  int span_limit, 
>  String owner, 
>  String type) throws FileNotFoundException, 
> IOException ...
> and then a config similar to
> \# Joshua configuration file
> config = {
> default-non-terminal = X
> goal-symbol = GOAL
> ...
> 
> PackedGrammar: {
> type: thrax,
> grammar_dir: /local/grammars/...
> span_limit: 50
> }
> ...
> }
> Version: TBD, but it's a breaking change so we may consider putting it in 
> Joshua 7.
> Totally open to other config / injection systems if others want to suggest 
> any of their favorites.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (JOSHUA-275) Revamp the Configuration System

2016-05-27 Thread Kellen Sunderland (JIRA)

 [ 
https://issues.apache.org/jira/browse/JOSHUA-275?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kellen Sunderland updated JOSHUA-275:
-
Description: 
I'd like to propose we centralize Joshua's configuration system to make use of 
typesafe/config https://github.com/typesafehub/config .  This config system 
looks like JSON but with comments so it's easy to read.  Because it's JSON it 
supports hierarchies of configurations, lists of configuration etc quite 
easily.  It has some nice features like parsing time automatically.  The main 
advantage here though is that we have a standard config system that doesn't 
have to be manually parsed.

Here's a quick example of how we can use it:

@Inject
public PackedGrammar(@TypesafeConfig("PackedGrammar.grammar_dir")
 String grammar_dir,
 @TypesafeConfig("PackedGrammar.span_limit")
 int span_limit, 
 String owner, 
 String type) throws FileNotFoundException, IOException 
...

and then a config similar to

\# Joshua configuration file
config = {
default-non-terminal = X
goal-symbol = GOAL
...

tm: {
type: thrax,
grammar_dir: /local/grammars/...
span_limit: 50
}
...
}

Version: TBD, but it's a breaking change so we may consider putting it in 
Joshua 7.

Totally open to other config / injection systems if others want to suggest any 
of their favorites.

  was:
I'd like to propose we centralize Joshua's configuration system to make use of 
typesafe/config https://github.com/typesafehub/config .  This config system 
looks like JSON but with comments so it's easy to read.  Because it's JSON it 
supports hierarchies of configurations, lists of configuration etc quite 
easily.  It has some nice features like parsing time automatically.  The main 
advantage here though is that we have a standard config system that doesn't 
have to be manually parsed.

Here's a quick example of how we can use it:

@Inject
public PackedGrammar(@TypesafeConfig("PackedGrammar.grammar_dir")
 String grammar_dir,
 @TypesafeConfig("PackedGrammar.span_limit")
 int span_limit, 
 String owner, 
 String type) throws FileNotFoundException, IOException 
...

and then a config similar to

\# Joshua configuration file
config = {
\# Joshua configuration file
default-non-terminal = X
goal-symbol = GOAL
...

tm: {
type: thrax,
grammar_dir: /local/grammars/...
span_limit: 50
}
...
}

Version: TBD, but it's a breaking change so we may consider putting it in 
Joshua 7.

Totally open to other config / injection systems if others want to suggest any 
of their favorites.


> Revamp the Configuration System
> ---
>
> Key: JOSHUA-275
> URL: https://issues.apache.org/jira/browse/JOSHUA-275
> Project: Joshua
>  Issue Type: Improvement
>Affects Versions: 6.1, 6.2, 7
>Reporter: Kellen Sunderland
>
> I'd like to propose we centralize Joshua's configuration system to make use 
> of typesafe/config https://github.com/typesafehub/config .  This config 
> system looks like JSON but with comments so it's easy to read.  Because it's 
> JSON it supports hierarchies of configurations, lists of configuration etc 
> quite easily.  It has some nice features like parsing time automatically.  
> The main advantage here though is that we have a standard config system that 
> doesn't have to be manually parsed.
> Here's a quick example of how we can use it:
> @Inject
> public PackedGrammar(@TypesafeConfig("PackedGrammar.grammar_dir")
>  String grammar_dir,
>  @TypesafeConfig("PackedGrammar.span_limit")
>  int span_limit, 
>  String owner, 
>  String type) throws FileNotFoundException, 
> IOException ...
> and then a config similar to
> \# Joshua configuration file
> config = {
> default-non-terminal = X
> goal-symbol = GOAL
> ...
> 
> tm: {
> type: thrax,
> grammar_dir: /local/grammars/...
> span_limit: 50
> }
> ...
> }
> Version: TBD, but it's a breaking change so we may consider putting it in 
> Joshua 7.
> Totally open to other config / injection systems if others want to suggest 
> any of their favorites.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (JOSHUA-275) Revamp the Configuration System

2016-05-27 Thread Kellen Sunderland (JIRA)

 [ 
https://issues.apache.org/jira/browse/JOSHUA-275?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kellen Sunderland updated JOSHUA-275:
-
Description: 
I'd like to propose we centralize Joshua's configuration system to make use of 
typesafe/config https://github.com/typesafehub/config .  This config system 
looks like JSON but with comments so it's easy to read.  Because it's JSON it 
supports hierarchies of configurations, lists of configuration etc quite 
easily.  It has some nice features like parsing time automatically.  The main 
advantage here though is that we have a standard config system that doesn't 
have to be manually parsed.

Here's a quick example of how we can use it:

@Inject
public PackedGrammar(@TypesafeConfig("PackedGrammar.grammar_dir")
 String grammar_dir,
 @TypesafeConfig("PackedGrammar.span_limit")
 int span_limit, 
 String owner, 
 String type) throws FileNotFoundException, IOException 
...

and then a config similar to

\# Joshua configuration file
config = {
\# Joshua configuration file
default-non-terminal = X
goal-symbol = GOAL
...

tm: {
type: thrax,
grammar_dir: /local/grammars/...
span_limit: 50
}
...
}

Version: TBD, but it's a breaking change so we may consider putting it in 
Joshua 7.

Totally open to other config / injection systems if others want to suggest any 
of their favorites.

  was:
I'd like to propose we centralize Joshua's configuration system to make use of 
typesafe/config https://github.com/typesafehub/config .  This config system 
looks like JSON but with comments so it's easy to read.  Because it's JSON it 
supports hierarchies of configurations, lists of configuration etc quite 
easily.  It has some nice features like parsing time automatically.  The main 
advantage here though is that we have a standard config system that doesn't 
have to be manually parsed.

Here's a quick example of how we can use it:

@Inject
public PackedGrammar(@TypesafeConfig("PackedGrammar.grammar_dir")
 String grammar_dir,
 @TypesafeConfig("PackedGrammar.span_limit")
 int span_limit, 
 String owner, 
 String type) throws FileNotFoundException, IOException 
...

and then a config similar to

# Joshua configuration file
config = {
# Joshua configuration file
default-non-terminal = X
goal-symbol = GOAL
...

tm: {
type: thrax,
grammar_dir: /local/grammars/...
span_limit: 50
}
...
}

Version: TBD, but it's a breaking change so we may consider putting it in 
Joshua 7.

Totally open to other config / injection systems if others want to suggest any 
of their favorites.


> Revamp the Configuration System
> ---
>
> Key: JOSHUA-275
> URL: https://issues.apache.org/jira/browse/JOSHUA-275
> Project: Joshua
>  Issue Type: Improvement
>Affects Versions: 6.1, 6.2, 7
>Reporter: Kellen Sunderland
>
> I'd like to propose we centralize Joshua's configuration system to make use 
> of typesafe/config https://github.com/typesafehub/config .  This config 
> system looks like JSON but with comments so it's easy to read.  Because it's 
> JSON it supports hierarchies of configurations, lists of configuration etc 
> quite easily.  It has some nice features like parsing time automatically.  
> The main advantage here though is that we have a standard config system that 
> doesn't have to be manually parsed.
> Here's a quick example of how we can use it:
> @Inject
> public PackedGrammar(@TypesafeConfig("PackedGrammar.grammar_dir")
>  String grammar_dir,
>  @TypesafeConfig("PackedGrammar.span_limit")
>  int span_limit, 
>  String owner, 
>  String type) throws FileNotFoundException, 
> IOException ...
> and then a config similar to
> \# Joshua configuration file
> config = {
> \# Joshua configuration file
> default-non-terminal = X
> goal-symbol = GOAL
> ...
> 
> tm: {
> type: thrax,
> grammar_dir: /local/grammars/...
> span_limit: 50
> }
> ...
> }
> Version: TBD, but it's a breaking change so we may consider putting it in 
> Joshua 7.
> Totally open to other config / injection systems if others want to suggest 
> any of their favorites.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)