Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
This reverts commit 1fa15c225b515e1fa1c6566f90f1be363a4d770f.
|
|
This reverts commit 10d91c147968d2e4d63b99b5b0342624827f416f.
|
|
This reverts commit 5354b441706b7c745efecb9174b00625c2d6bab3.
|
|
|
|
I think template haskell is robust enough now across platforms
that this will work.
Motivation: file-embed gives us better dependency tracking: if a data
file changes, ghc/stack/cabal know to recompile the Data module.
This also removes hsb2hs as a build dependency.
|
|
|
|
Using anything outside base is dangerous, since older
versions of ghc will link against two different versions.
See e.g.
- https://groups.google.com/forum/#!topic/pandoc-discuss/0r9Hhl730LY
- https://www.reddit.com/r/haskell/comments/3634x2/cabal_is_giving_a_weird_error_when_attempting_to/
- jaspervdj/hakyll#356
|
|
If it returns an error with input `--version`, recover
gracefully.
|
|
This is done by adding `hookedPrograms` in `Setup.hs`,
which allows us to include `hsb2hs` in Build-Tools in cabal.
|
|
|
|
The process was too fragile. It made too many assumptions about
available libraries (which failed sometimes when sandboxes were
used). This is a low-tech solution. The only drawback is that
`man/pandoc.1` is a generated file in the repository. It will need
to be regenerated periodically when README changes.
|
|
Closes #2262.
|
|
|
|
|
|
The pandoc.1 man page is generated automatically after the cabal
build process. It goes in `data/pandoc.1`. It can be obtained
by the user who installs pandoc via cabal thus:
pandoc --print-default-data-file pandoc.1 > pandoc.1
|
|
This change adds `--man1` and `--man5` options to pandoc, so
pandoc can generate its own man pages.
It removes the old overly complex method of building a separate
executable (but not installing it) just to create the man pages.
The man pages are no longer automatically created in the build
process.
The man/ directory has been removed. The man page templates
have been moved to data/.
New unexported module: Text.Pandoc.ManPages.
Text.Pandoc.Data now exports readmeFile, and `readDataFile`
knows how to find README.
Closes #2190.
|
|
* Reverted kludgy change to make-windows-installer.bat.
* Removed make-reference-fiels.hs.
* Moved the individual ingredients of reference.docx and
reference.odt to the data directory.
* Removed reference.docx and reference.odt from data directory.
* We now build the reference archives from their ingredient pieces
in the docx and odt writers, instead of having a reference.docx
or reference.odt intermediary.
This should fix #2187.
It also simplifies the bulid procedure.
The one thing users may notice is different is that you can
no longer get the reference.docx or reference.odt using
`--print-default-data-file`. Instead, simply generate a
docx or odt using pandoc with a blank or minimal input,
and use that (or a customized version) with `--reference-docx`
or `--reference-odt`.
|
|
|
|
Updated INSTALL instructions.
Makefile: removed man target, now that we generate man pages by default.
|
|
|
|
|
|
It no longer builds and installs man pages.
All it does is hook the hsb preprocessor.
This should make the build process more robust over Cabal API
changes. We'll add a Makefile to generate man pages.
|
|
This was just too fragile and dependent on a changing Cabal API
(see #1526).
Instead of passing the bulid directory to the test program, we
now let the test program find itself (using executable-path)
and then find the pandoc executable relative to itself.
|
|
This doesn't normally cause a problem because of some ghc workaround special to this case, but I was able to trigger an error with a complicated mixture of sandboxing, directing `cabal` to a locally installed ghc, and something else. `catch` isn't actually used in the file, so it seems it might as well go.
|
|
|
|
Allows test suite to work with cabal sandboxes.
Previously we hard-coded the build directory.
|
|
This reverts commit ed061b91c8e3247e1d3b1538eca24687adf0e575.
|
|
Previously we tried to remove make-pandoc-man-pages from the list
of packages to be haddocked, installed, copied, etc.
It works better to set 'Buildable: False' on make-pandoc-man-pages,
then have the buildHook temporarily set Buildable to True. This
allows make-pandoc-man-pages to be built (and used in generating
the man pages), but not installed.
|
|
This should work on Windows, unlike the TH solution with
file-embed.
|
|
|
|
* MakeManPage.hs has been transformed into
man/make-pandoc-man-pages.hs.
* There is now a cabal stanza for this, so the dependencies are
handled by cabal.
* Special treatment in Setup.hs ensures that this never gets installed;
it is built and used to create the man pages.
* Setup.hs cleaned up.
|
|
|
|
|
|
|
|
To run tests, configure with --enable-tests, then 'cabal test'.
You can specify particular tests using --test-options='-t markdown'.
No output is shown unless tests fail. In the future, we can move
to the detailed-1.0 interface.
|
|
|
|
Thanks to Magnus Therning for the patch.
|
|
|
|
In Setup.hs we now invoke 'runghc' in a way that points
it to the correct package databases, instead of always
falling back to the default user package db.
Thanks to Antoine Latter for the patch.
|
|
|
|
|
|
* Markdown syntax description from README now goes in pandoc_markdown.5.
* Refactored man page construction functions, putting more of
the work in MakeManPages.hs.
|
|
|
|
|
|
+ You can now specify glob patterns after 'cabal test';
e.g. 'cabal test latex' will only run the latex tests.
+ Instead of detecting highlighting support in Setup.hs,
we now detect it in test-pandoc, by looking to see if
'languages' is null.
+ We now verify the lhs readers against the lhs-test.native,
normalizing with 'normalize'. This makes more sense than
verifying against HTML, which also brings in the HTML writer.
+ Added lhsn-test.nohl.{html,html+lhs}, so we can do the lhs
tests whether or not highlighting has been installed.
|
|
|
|
|
|
+ This ensures that test-pandoc gets built.
+ 'cabal test' now runs this.
+ The old tests/RunTests.hs has been removed, and
src/test-pandoc.hs added.
|
|
Previously it relied on pandoc already being installed.
Now it uses dist/package.conf.inplace.
|