Skip to main content
Spindle Codegen Plugin
=================

A plugin for the Pants build system to use Foursquare's
`Spindle <https://github.com/foursquare/spindle>`_ to Thrift-to-Scala code generator.



Configuration
----------


``pants.ini``
^^^^^^^^^^^^^

The ``spindle-gen`` section of pants.ini must contain ``bootstrap-tools`` and ``scala_record``.

The list ``bootstrap-tools`` should include the address of a ``jar_library`` target (usually defined
in ``BUILD.tools``_) for the spindle codegen jar.

The dictionary ``scala_record`` should include a list ``deps`` of address specs to be added to the
``dependencies`` of generated targets.

The minimal pants.ini additions to get Spindle working likely looks more or less like::

[spindle-gen]
bootstrap-tools: ['//:spindle-codegen']
scala_record: {
'target_language': 'scala',
'template': 'scala/record.ssp',
'javaTemplate': 'javagen/record.ssp',
'options': '',
'deps': [
'3rdparty:spindle-runtime',
'3rdparty:mongodb',
'3rdparty:joda-time',
'3rdparty:scalaj-collection',
]
}


``BUILD.tools``
^^^^^^^^^^^^^^^
The ``bootstrap-tools`` config in ``pants.ini`` should point to a target that specifies a spindle
codegen jar::
jar_library(
name = 'spindle-codegen',
jars = [
jar(org = 'com.foursquare', name = 'spindle-codegen-binary_2.10', rev = '3.0.0-M5.1'),
],
)

Release files for foursquare.pants.spindle 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for foursquare.pants.spindle 0.0.1
File Size Uploaded
foursquare.pants.spindle-0.0.1.tar.gz 4.7 kB Details

Release files / foursquare.pants.spindle-0.0.1.tar.gz

Download URL foursquare.pants.spindle-0.0.1.tar.gz
Size 4.7 kB
Tags Source
SHA-256 checksum
How to use checksums
78334863c3c6da4e0f0da78e9c1162699dd986040fa028daa998104397e2a5bb
BLAKE2b-256 checksum
How to use checksums
a8069a085cfb174729696b2682cd0f61bec0afed23333435e1372277f63d786a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.0.1 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page