How to measure line voltage (220V) with an arduino?
I would like to avoid using a transformer because of weight
  constraints.


Transformers don't have to be big. Consider being clever and using a really really small transformer that both supplies control signals and power as well as receiving digital data back from an ADC: -



You have an AD7793 ADC on the left that is isolated from your MCU interface on the right. The isolation chip provides power from the MCU's supply as well as permitting a combination of digital IO.

You'll still need to reduce the voltage going into the ADC to a suitable level (using a resistor or capacitive dropper) of course but now you've solved the weight issue without creating the problem of connecting potentially a live circuit to your local MCU ground.