Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
First time I saw "invariant" in a language was in Eiffel - here is an example https://archive.eiffel.com/doc/online/eiffel50/intro/language/invitation-07.html 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PDB-2475) Add Ubuntu 16.04 Xenial as a build/test platform

2016-02-26 Thread Melissa Stone (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Melissa Stone commented on  PDB-2475 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add Ubuntu 16.04 Xenial as a build/test platform  
 
 
 
 
 
 
 
 
 
 
Yeah, I'll try to get progress on getting ubuntu 15.10 up and ready for pdb (including the puppetserver packages). It's probably worthwhile to note Ubuntu 15.10 goes end of life in July 2016. We could probably have packages up by then, but it'll be tight given how drawn out this process usually is 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
The term "invariants" are used to describe states that are not ok. It is related to the terms covariant, and contravariant. I may have used the term in an inprecise way. 
I made some proposals way back... https://github.com/puppetlabs/puppet-rfc/blob/master/prfc-7.puppet_types/puppet_types.md#check-invariant (have to look for something more recent). Basically we want to give a rule a decent name, and describe what is not allowed. e.g. blue_things_cannot_be_big and then a definition of that - it could be as simple as a struct type where it considers the attributes of the objects and the type constraints must hold). 
I do want to leave them out of the first implementation and only support basic type validation.  
In additional domain I want to leave out is "munge"/"unmunge" to use puppet terminology; basically type conversion to/from string form, or between some external form and an internal. That is of value per attribute - when constructing an instance you may want to be able to transform the given value - a kind of setter. Example - you want 'yes', 'y', 'n', 'no' to define the state of a boolean. However, not sure it belongs in the object model itself or if it is separate. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PDB-2475) Add Ubuntu 16.04 Xenial as a build/test platform

2016-02-26 Thread Kenneth Barber (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Kenneth Barber commented on  PDB-2475 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add Ubuntu 16.04 Xenial as a build/test platform  
 
 
 
 
 
 
 
 
 
 
Kurt Wall ^^ 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PDB-2475) Add Ubuntu 16.04 Xenial as a build/test platform

2016-02-26 Thread Kenneth Barber (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Kenneth Barber commented on  PDB-2475 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add Ubuntu 16.04 Xenial as a build/test platform  
 
 
 
 
 
 
 
 
 
 
Ah lol, the answer is no ... thanks for pointing that out, I guess we'll need this for 16.04 as well, we have to do this in order. Doh! 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PDB-2475) Add Ubuntu 16.04 Xenial as a build/test platform

2016-02-26 Thread Melissa Stone (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Melissa Stone commented on  PDB-2475 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add Ubuntu 16.04 Xenial as a build/test platform  
 
 
 
 
 
 
 
 
 
 
Yeah, I can definitely look at doing that. Do we already have puppet server packages for 15.10 to test against? 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Thomas Hallgren (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Thomas Hallgren commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
"I think it is best to treat both equality and magnitude as operations equal and compare where the default operations are id equal (or possibly all attributes equal), and a compare that raises an error (not comparable)." 
The problem with this is that then you leave the comparison up to the implementation. It's not possible to write a generic tool that compares two instances based on their type. I would really like to have that, because without it, we cannot create types dynamically that has this capability. 
I also think that the definition of what makes an instance of an Object type unique should be declared on the type. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Thomas Hallgren (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Thomas Hallgren commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
I'm a bit confused by the term "invariant". As used here, it seems to signify valid states of the object. As I was a bit uncertain, I looked it up: 
Invariant [adjective] a feature (quantity or property or function) that remains unchanged when a particular transformation is applied to it 
Invariant [noun] not varying; constant 
I understand that each state that instances of this object may be in can be thought of as something constant (i.e. invariant) but the meaning "not varying" and "remains unchanged" still seems a bit off. Perhaps a less confusing term could be used such as 'valid_states' ? Or am I missing some computer sci-fi language that I need to read up on? 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
Then we have reached a tie in matters of taste. I would like this to be done the way I proposed. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Thomas Hallgren (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Thomas Hallgren commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
"split places" can sometimes be a great way of making things more readable. You look at things from different aspects and one major aspect when looking at an object is often to see what attributes and functions it contains, just in terms of names and types, and I think it's of great value to keep that section clean from other concerns. 
In my experience, a clean separation of concern is rarely a nuisance when it comes to copy/paste or merging. It's rather the opposite. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5958) Docs: Update installer screenshots when branding work is finished

2016-02-26 Thread Craig Gomes (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Craig Gomes commented on  PUP-5958 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Docs: Update installer screenshots when branding work is finished  
 
 
 
 
 
 
 
 
 
 
Kylo Ginsberg we'll pick it up whenever the branding is complete. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PDB-2475) Add Ubuntu 16.04 Xenial as a build/test platform

2016-02-26 Thread Kenneth Barber (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Kenneth Barber commented on  PDB-2475 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add Ubuntu 16.04 Xenial as a build/test platform  
 
 
 
 
 
 
 
 
 
 
Doh! I guess thats what RE-6619 is for . 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PDB-2475) Add Ubuntu 16.04 Xenial as a build/test platform

2016-02-26 Thread Kenneth Barber (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Kenneth Barber commented on  PDB-2475 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add Ubuntu 16.04 Xenial as a build/test platform  
 
 
 
 
 
 
 
 
 
 
Melissa Stone do you have cows for this? We're still waiting for the 15.10 cows: https://tickets.puppetlabs.com/browse/RE-6503?jql=text%20~%20%2215.10%22 ... do we need to create a ticket for the 16.04 cows first? We can't really finish this until its done. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (HI-500) Incoherence in YAML parser

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  HI-500 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Incoherence in YAML parser  
 
 
 
 
 
 
 
 
 
 
The hiera_xxx functions do not work with data in environments and modules. They never will. The intent is to use automatic data binding, using lookup of exactly the same key as the automatic data binding performs is a no-op (meaningless) as if the key exists it is set and the default value _expression_ (calling the lookup) is never evaluated. Using a lookup in the default vallue _expression_ is only meaningful if you are looking up a different key. 
I think you would benefit from discussion how to do these things with members of the community, on IRC or via the mailinglist. 
Nevertheless, there seems to be something that is different depending on if yaml files are correct with '' tag or not. I am not sure I understood exactly how you derived at this difference. 
Ping Thomas Hallgren any thoughts on this? 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Thomas Hallgren (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Thomas Hallgren commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
Regarding undef and optional attributes, you're right. It's not applicable in an Object type. It's only applicable when a Struct is used to validate a Hash or when determining if one Struct is assignable to another. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
I don't mind the "incompatible with struct" - they are different anyway, and I am not entirely happy with struct as it leans towards the magic side. I was a rush job IMO and we are paying for that now. 
I don't think that defining the default in a hash makes it "messy", it is just more verbose. I am more in favour of not having a short form at all rather than having one with magic sprinkled on it, or that the definition is split up into two sections (or more) for the same feature. 
The separation of a definition is a nuisance in practice.How to you copy paste an attribute/feature with all of its characteristics? Cherry picking in multiple locations leads to lots of typos/copy-paste errors.  
The "split places" issue is unavoidable when it comes to invariants, but that is just the way it is. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Thomas Hallgren (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Thomas Hallgren commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
The "provided type" looks complicated. I understand the motivation behind it but I think the group of users who will be able to use this is very limited. Hence, I'm not convinced that it would be a useful addition. Someone I know well recently wrote "Puppet users are not computer language scientists". 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (HI-500) Incoherence in YAML parser

2016-02-26 Thread Maxime Anciaux (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Maxime Anciaux commented on  HI-500 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Incoherence in YAML parser  
 
 
 
 
 
 
 
 
 
 
Here my module (init.pp) 
 
 
 
 
 
 
class firewall ( 
 
 
 
 
  $fw_rules 
 
 
 
 
) { 
 
 
 
 
  $fw_rules.each |String $name, Hash $rule| { 
 
 
 
 
create_resources('firewalld',{$name => $rule}) 
 
 
 
 
} 
 
 
 
 
}
 
 
 
 
 
 
 
Configuring to use data_provider hiera (in the metadata.json) I even try using the lookup function  
(something like that, and with the hiera function instead of lookup) 
 
 
 
 
 
 
class firewall ( 
 
 
 
 
  ) { 
 
 
 

Jira (PUP-5911) Define the content of an .xpp file

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  PUP-5911 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Define the content of an .xpp file  
 
 
 
 
 
 
 
 
 
 
We need to decide if we want to use arguments to Issue instead of baked instances of Diagnostic. The reason for this is that it is easier to ensure 100% compatibility if the native parser (or any other parser) generates issues codes + arguments rather than pre formatted error messages. This also makes it possible to have a later binding to human language. 
No sure how precise we want the modelling of that to be. Do we have an ENUM with all the error codes? Do we produce a model of the issues so that they are fully modeled? (They have a name, and attributes), they all share some common attributes. We can write a transformer that generates the PCore model that describes the issues. This however requires us to bump the protocol each time we add an error code. That pain is worse than loss of precision type wise. A concern though is that the arguments to issues must be able to pass in a reference to an AST node (which should be doable) as it is Issue and the DiagnoticProducer's responsibility to figure out the file / line from the given issue. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Thomas Hallgren (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Thomas Hallgren commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
In essence, we have two syntax proposals: 
 
 
 
 
 
 
Object[{key<=>type pairs}, { additional characteristics }]
 
 
 
 
 
 
 
 
 
 
 
 
 
Object[{ 
 
 
 
 
  attributes => {key<=>type pairs}, 
 
 
 
 
  functions => {key<=>callable pairs}, 
 
 
 
 

 
 
 
 
}]
 
 
 
 
 
 
 
I can see advantages with both. The first one: Pros: 
 

is directly applicable on a Struct which means that we can add additional characteristics to that type using current syntax.
 

in case there are no additional characteristics, it's very compact.
 

clean separation between the key<=>type pairs and other concerns (optionality and defaults among others). Cons:
 

   

Jira (PUP-5911) Define the content of an .xpp file

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  PUP-5911 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Define the content of an .xpp file  
 
 
 
 
 
 
 
 
 
 
When discussing the use cases where an xpp file is used we discovered that: 
 

It must contain the information that is obtained as the ParseResult from the current parser: 
 

The AST model (if it could be produced, otherwise undef 
 

The Locator - which includes the filename and line offset index
 

The source code (it is in the Program AST top level node)
 
 
 

An array with warnings Diagnostic instances
 

An array with error Diagnostic instances
 
 
 
 
There is leeway in how to model the errors/warnings - they could all be in one array and with a severity in the diagnostic, the error and warning arrays/counts can be derived from the all_diagnostics array. 
Unless the file contains all of those things it cannot work as a replacement result for doing the parse in Ruby. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
  

Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
 
Regarding the optional attribute and your statement "That must be an attribute that accepts undef, and that has an undef default value. It can just as well be described that way." It just can't. You might want to describe "If this value is present, it has to be an Integer", i.e. a missing entry is acceptable, an entry with the value undef is not. The distinction between the two is important.
 
I don't understand this. When an object is instantiated it must be given arguments + use its rules to defined an instance where the attributes values are correct wrt. the type constraints. We are not going to have objects with dynamically added attributes (hashes/structs have this ability, the keys they contain are not attributes of the Struct/Hash). So, how can you possibly have something that "if present is an Integer" otherwise it does not exist in an Object? It does not make sense. 
 
Sort order can be a characteristic on an Array, but only in a form that overrides the default sort order defined on the element type. I guess the same is true on a Hash (in case it's desirable to have the keys sorted). We can also allow passing a sort order override to iterative functions. Having a default sort order specified on the type is valuable when you don't want to do any of that.
 
So, wait with all things related to sorting. This is fuzzy. 
 
If the type is Iterable, and I guess also if it's Data can either be described as traits on the Object type, or by using multiple inheritance. I agree that objects can be iterated in different ways but there's only one way that makes it an Iterable from a type perspective. Other ways must be described using functions.
 
Think we need to wait with designing this. Too much to design. If a type is iterable, what is its Iterable[T] ? How to do get that iterable/iterator, can it be divined from just a simple "yep, I am Iterable"? etc.  
 
I think we need the "allow additional values in a hash" constraint. We have had use-cases already where the hash was generated with a standard set of keys but only a few keys were applicable to each of the many usages where the hash was used as an argument. The important thing for the user was to ensure that the hash contained some required keys. Additional entries were expected but of no interest. I don't think this will be uncommon. That said, this trait is probably more important on a Struct then on an Object.
 
A hash is naturally already open ended. We have other tickets (IIRC) that are about allowing a pattern to describe additional keys in a Struct. I don't want an Object to have dynamically defined attributes. 
What we do need is a mechanism of controlling the type of an attribute based on the value of another attribute. The typical case of, "Use provider X", and "here are properties to X". It may be defied as a Variant type and an invariant naturally. but there is also the question of how to make this open ended because not all provider types are known a priori. 
This may also be a matter of addressing 

Jira (PUP-4678) Enable yumrepo priority attribute to support lower priority than 99

2016-02-26 Thread Ketan Patel (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Ketan Patel updated an issue 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 Puppet /  PUP-4678 
 
 
 
  Enable yumrepo priority attribute to support lower priority than 99  
 
 
 
 
 
 
 
 
 

Change By:
 
 Ketan Patel 
 
 
 

Affects Version/s:
 
 PUP 3.8.6 
 
 
 

Affects Version/s:
 
 PUP 4.3.2 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-4678) Enable yumrepo priority attribute to support lower priority than 99

2016-02-26 Thread Ketan Patel (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Ketan Patel commented on  PUP-4678 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Enable yumrepo priority attribute to support lower priority than 99  
 
 
 
 
 
 
 
 
 
 
i'm having the same issue. i want to setup new repository lower than system default which is 99. 
My Env. puppet 3.8.x 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Thomas Hallgren (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Thomas Hallgren commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
Regarding the optional attribute and your statement "That must be an attribute that accepts undef, and that has an undef default value. It can just as well be described that way." 
It just can't. You might want to describe "If this value is present, it has to be an Integer", i.e. a missing entry is acceptable, an entry with the value undef is not. The distinction between the two is important. 
Sort order can be a characteristic on an Array, but only in a form that overrides the default sort order defined on the element type. I guess the same is true on a Hash (in case it's desirable to have the keys sorted). We can also allow passing a sort order override to iterative functions. Having a default sort order specified on the type is valuable when you don't want to do any of that. 
If the type is Iterable, and I guess also if it's Data can either be described as traits on the Object type, or by using multiple inheritance. I agree that objects can be iterated in different ways but there's only one way that makes it an Iterable from a type perspective. Other ways must be described using functions. 
I think we need the "allow additional values in a hash" constraint. We have had use-cases already where the hash was generated with a standard set of keys but only a few keys were applicable to each of the many usages where the hash was used as an argument. The important thing for the user was to ensure that the hash contained some required keys. Additional entries were expected but of no interest. I don't think this will be uncommon. That said, this trait is probably more important on a Struct then on an Object. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to 

Jira (HI-500) Incoherence in YAML parser

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  HI-500 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Incoherence in YAML parser  
 
 
 
 
 
 
 
 
 
 
Thanks, that took this a bit further... 
What do you mean by "when I use a lookup on my module"? I do understand the config you have and the command that worked. I need to understand what your configuration was / what the files looked like when it did not work, what you did, and what you expected the outcome to be. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (HI-500) Incoherence in YAML parser

2016-02-26 Thread Maxime Anciaux (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Maxime Anciaux commented on  HI-500 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Incoherence in YAML parser  
 
 
 
 
 
 
 
 
 
 
I'll try to be more explicit then. 
I'm using hiera format 4 with code like this: 
 
 
 
 
 
 
--- 
 
 
 
 
version: 4 
 
 
 
 
datadir: data 
 
 
 
 
hierarchy: 
 
 
 
 
  - name: "Nodes" 
 
 
 
 
backend: yaml 
 
 
 
 
path: "node.yaml" 
 
 
 
 
  - name: "common" 
 
 
 
 
backend: yaml 
 
 
 
 
path: "common.yaml"
 
 
 
 
 
 
 
Node.yaml look like : 
 

Jira (PUP-5979) regression - function regsubs should allow a hash as replacement parameter

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg updated an issue 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 Puppet /  PUP-5979 
 
 
 
  regression - function regsubs should allow a hash as replacement parameter  
 
 
 
 
 
 
 
 
 

Change By:
 
 Henrik Lindberg 
 
 
 

Summary:
 
 regresion regression  - function regsubs should allow a hash as replacement parameter 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5979) regresion - function regsubs should allow a hash as replacement parameter

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  PUP-5979 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: regresion - function regsubs should allow a hash as replacement parameter  
 
 
 
 
 
 
 
 
 
 
merged to master at: 41c2cbd 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5979) regresion - function regsubs should allow a hash as replacement parameter

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg assigned an issue to Unassigned 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 Puppet /  PUP-5979 
 
 
 
  regresion - function regsubs should allow a hash as replacement parameter  
 
 
 
 
 
 
 
 
 

Change By:
 
 Henrik Lindberg 
 
 
 

Assignee:
 
 Reinhard Vicinus 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
Agree that it is of interest to model equality and magnitude. 
If nothing is stated two object are equal if all of their attributes are equal. Equality can be a feature of the object type. i.e. 
 
 
 
 
 
 
type T = Object[{ 
 
 
 
 
  equality => [], 
 
 
 
 
}]
 
 
 
 
 
 
 
Sometimes equality is tricky and you need either/or, handle missing value etc. Not sure a simple "equal if these attributes are equal" is enough. 
Magnitude is similar, but more difficult to model, it can be done with a SQL:ish 'order by' construct where attributes can individually be marked as ascending or descending, but that does not handle all cases. 
I think it is best to treat both equality and magnitude as operations equal and compare where the default operations are id equal (or possibly all attributes equal), and a compare that raises an error (not comparable). 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
   

Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
 

It was the validation function that was implementation.
 

Additional values in a hash - do we need that anywhere - we have the hash and struct types, don't want additional dynamic attributes in an object that are not modeled (possibly acceptable if they are described by a pattern and that none of the given names for other features match such patterns, in this object and its parent types). I would rather not go there.
 

Sort order on something is of interest, but I wonder how that applies in our case with immutable data. Is that a characteristic of array? Is it an error if it is not sorted? If it is a characteristic of an attribute, does it sort on assignment? (probably). Can a function declare that it returns an Array sorted in a particular order. Is Sorted a type? What does it sort on? Ascending, Descending? Or is SortedArray a data type that you create yourself, and that is a type constraint (you must sort before you give it to an object that requires it)?
 

Iterability is tricky - there may be different ways to iterate over an object, just having a flag does not define everything you need to know. I think it is better modeled as functions returning Iterable.
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, 

Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Thomas Hallgren (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Thomas Hallgren commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
Some points. 
Uniqueness doesn't need a context. It's about what makes one object equal to another object. Knowing this by just looking at the type means that you can compare (for equality) and cache such objects efficiently without knowledge about their implementation. You can also compare different implementation of the type, just based on the types opinion about how they should be compared. This can be a major advantage when we use types to describe how already existing ruby implementations should be serialized and tabulated. 
Uniqueness is related to, but not the same as, sort order. Sort order defines how one object compares to another for magnitude and what attributes that are involved in determining that. Knowing that by just looking at the type means that you can sort objects of that type efficiently and unambiguously regardless of their implementation. 
Neither uniqueness nor sort order can be specified on an attribute, simply because they can span several attributes. 
Whether or not an object is iterable is also a trait that very much belongs in the type. I think that "additional entries allowed" does that too. None of then can be describes as attributes, operations/functions, or invariants. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (HI-500) Incoherence in YAML parser

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg updated an issue 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 Hiera /  HI-500 
 
 
 
  Incoherence in YAML parser  
 
 
 
 
 
 
 
 
 

Change By:
 
 Henrik Lindberg 
 
 
 

Scrum Team:
 
 Language 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (HI-500) Incoherence in YAML parser

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  HI-500 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Incoherence in YAML parser  
 
 
 
 
 
 
 
 
 
 
Obviously YAML files must be valid YAML. What is valid is unfortunately decided by the YAML implementation, and it may vary between Ruby versions. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (HI-500) Incoherence in YAML parser

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  HI-500 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Incoherence in YAML parser  
 
 
 
 
 
 
 
 
 
 
Maxime Anciaux Can you describe in more detail what you defined, what you expected and what you got. It is hard to understand your description of the problem. What we need is to be able to reproduce the problem. Can you help us with that? 
I am keeping this ticket in the Hiera project until we know what the problem really is. When using lookup there are two parts in play; the hiera project and its backends, and the corresponding implementation in Puppet (hiera format 4, and the data providers for environments and modules). 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (HI-500) Incoherence in YAML parser

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg assigned an issue to Maxime Anciaux 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 Hiera /  HI-500 
 
 
 
  Incoherence in YAML parser  
 
 
 
 
 
 
 
 
 

Change By:
 
 Henrik Lindberg 
 
 
 

Assignee:
 
 Aaron Armstrong Maxime Anciaux 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (HI-500) Incoherence in YAML parser

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg updated an issue 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 Hiera /  HI-500 
 
 
 
  Incoherence in YAML parser  
 
 
 
 
 
 
 
 
 

Change By:
 
 Henrik Lindberg 
 
 
 

Component/s:
 
 PE 
 
 
 

Component/s:
 
 Community 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
An Object describes the features of instances of this type. The features are: 
 

parent type
 

attributes
 

operations/functions
 

invariants
 
 
What is described per kind of feature is different, it therefore is most natural to have the features at the first level of the hash. 
 
 
 
 
 
 
type T = Object[{ 
 
 
 
 
  parent => ParentType, 
 
 
 
 
  attributes =>  { ... }, 
 
 
 
 
  functions => { ... }, 
 
 
 
 
  invariants => { ... }, 
 
 
 
 
  # room for new kinds of features 
 
 
 
 
}]
 
 
 
 
 
 
 
For attributes - it is either a simple 

Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Thomas Hallgren (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Thomas Hallgren commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
Henrik Lindberg, the fact that you dismiss this as a grab bag is a bit dissapointing. Look at the proposal more carefully please. Compare it to what ECore offers and other techniques like JSON-schema for instance. I don't understand what in this you feel concerns implementation: 
 

The defaults is not, we can agree on that.
 

That's optional is not, we can probably agree on that too.
 

Whether or not additional elements in a hash is considered as disqualifying is a constraint, not implementation specific.
 

ECore considers sort-order, and unique keys to be characteristics of a type, so I guess we can do that too.
 

Whether or not an object is iterable or not is also a characteristic of a type (you asked if I had given that any though, now I have).
 
 
That leaves the validation of combined values. Is that what you are objecting to? In that case, strike that. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this 

Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Henrik Lindberg (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Henrik Lindberg commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
Eh, that was a grab-bag of inventions on the fly - some concerning the interface and some concerning an implementation. An Object is an interface, it does not describe implementation details. 
We are going to add invariants - they are rule based - if we have to have them in the interface (we probably should) then they can get quite complicated. 
If we cannot keep this simple and readable when using generic hash/array based data we need proper syntax. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (HI-500) Incoherence in YAML parser

2016-02-26 Thread Maxime Anciaux (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Maxime Anciaux created an issue 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 Hiera /  HI-500 
 
 
 
  Incoherence in YAML parser  
 
 
 
 
 
 
 
 
 

Issue Type:
 
  Improvement 
 
 
 

Assignee:
 
 Aaron Armstrong 
 
 
 

Components:
 

 Community, PE 
 
 
 

Created:
 

 2016/02/26 2:17 AM 
 
 
 

Priority:
 
  Minor 
 
 
 

Reporter:
 
 Maxime Anciaux 
 
 
 
 
 
 
 
 
 
 
My YAML file missed the '---' at the beginning. 
When I ran 'puppet lookup my_var' I was getting the first encountered value, but in my module, I was getting only the last one (common.yaml).  
After adding those '---', I was getting the first encountered value.  
Those 2 different behavior seems incoherent to me. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
  

Jira (FACT-1351) Facter on Alpine Linux requires root permissions

2016-02-26 Thread Gareth Rushgrove (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Gareth Rushgrove updated an issue 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 Facter /  FACT-1351 
 
 
 
  Facter on Alpine Linux requires root permissions  
 
 
 
 
 
 
 
 
 

Change By:
 
 Gareth Rushgrove 
 
 
 
 
 
 
 
 
 
 Running facter on Alpine linux as a non-root user currently fails with the following error:{code}$ facterPermission denied @ dir_initialize - /sys/block/{code}The version of facter is 2.4.6, installed via the gem as a native package for Alpine is not available.{code}$ facter --version2.4.6{code}Note that asking for specific facts does not trigger the error, for instance:{code ] } $ facter osfamilyLinux{code}I've tracked this down to the blockdevice facts, and can trigger the error by asking for those facts directly.{code}$ sudo facter | grep blockblockdevice_sda_model => VBOX HARDDISKblockdevice_sda_size => 10737418240blockdevice_sda_vendor => ATAblockdevices => sda$ facter blockdevice_sda_modelCould not retrieve blockdevice_sda_model: Permission denied @ dir_initialize - /sys/block/$ facter blockdevice_sda_sizeCould not retrieve blockdevice_sda_size: Permission denied @ dir_initialize - /sys/block/$ facter blockdevice_sda_vendorCould not retrieve blockdevice_sda_vendor: Permission denied @ dir_initialize - /sys/block/$ facter blockdevicesCould not retrieve blockdevices: Permission denied @ dir_initialize - /sys/block/{code}So it appears to be the block device facts which require the permissions.The workaround I'm using at present is to delete those facts from the filesystem :){code}$ sudo rm /usr/lib/ruby/gems/2.2.0/gems/facter-2.4.6/lib/facter/blockdevices.rb{code}I think it would be good if, instead of preventing all output due to failures in individual facts, facter could fail only to output the blockdevice facts, maybe logging a warning, and output everything else. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  

Jira (FACT-1351) Facter on Alpine Linux requires root permissions

2016-02-26 Thread Gareth Rushgrove (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Gareth Rushgrove created an issue 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 Facter /  FACT-1351 
 
 
 
  Facter on Alpine Linux requires root permissions  
 
 
 
 
 
 
 
 
 

Issue Type:
 
  Bug 
 
 
 

Assignee:
 

 Unassigned 
 
 
 

Created:
 

 2016/02/26 12:54 AM 
 
 
 

Priority:
 
  Normal 
 
 
 

Reporter:
 
 Gareth Rushgrove 
 
 
 
 
 
 
 
 
 
 
Running facter on Alpine linux as a non-root user currently fails with the following error: 
 
 
 
 
 
 
$ facter 
 
 
 
 
Permission denied @ dir_initialize - /sys/block/
 
 
 
 
 
 
 
The version of facter is 2.4.6, installed via the gem as a native package for Alpine is not available. 
 
 
 
 
 
 
$ facter --version 
 

Jira (PUP-5927) Add default value to Default type

2016-02-26 Thread Thomas Hallgren (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Thomas Hallgren commented on  PUP-5927 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add default value to Default type  
 
 
 
 
 
 
 
 
 
 
I agree. I added a proposal in PUP-5844. Please close this one. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.12#64027-sha1:e3691cc) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-bugs@googlegroups.com.
Visit this group at https://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/d/optout.


Jira (PUP-5844) Add the Object type to the Puppet Type system

2016-02-26 Thread Thomas Hallgren (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Thomas Hallgren commented on  PUP-5844 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: Add the Object type to the Puppet Type system  
 
 
 
 
 
 
 
 
 
 
My first though was that this can be made even simpler. Let's control optionality with a single assignment operator. Everywhere! We already have it in parameter expressions. Things are more complex than that but in general, the following should work for most cases (using simple String type throughout to avoid clutter): 
 
 
 
 
 
 
type MyType = Object[{ 
 
 
 
 
   a => String,# must be provided 
 
 
 
 
   b => Undef[String], # must be provided, but undef is allowed 
 
 
 
 
   c => String= 'x',   # will have the value 'x' unless provided 
 
 
 
 
   d => Undef[String] = undef  # will have the value undef unless provided 
 
 
 
 
}]
 
 
 
 
 
 
 
Unfortunately, the world is more complex and there are several additional things that we will want to consider: 
 

Be able to describe the difference between an entry that has its default value and a truly optional entry (will not be instantiated unless provided).
 

Be able to describe if the type will allow additional entries in an instance or if that is considered a mismatch.
 

If one entry, or a combination of entries, forms a unique key (hash and 

<    1   2