laurencer / confluence-sync Goto Github PK
View Code? Open in Web Editor NEWA command line tool for syncing HTML/Markdown to Confluence!
License: BSD 3-Clause "New" or "Revised" License
A command line tool for syncing HTML/Markdown to Confluence!
License: BSD 3-Clause "New" or "Revised" License
E.g. [My Link](foo.md#anchor)
will correctly resolve to <a href="foo.md">My Link</a>
but the link rewriting loses the anchor when it should be kept.
While building on my amd64 debian stretch machine:
bnewbold@orithena$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 9.0 (stretch)
Release: 9.0
Codename: stretch
bnewbold@orithena$ stack --version
Version 1.4.0, Git revision e714f1dd3fade19496d91bd6a017e435a96a6bcd (4640 commits) x86_64 hpack-0.17.0
bnewbold@orithena$ openssl version
OpenSSL 1.1.0f 25 May 2017
I got the following build error:
-- While building package HsOpenSSL-0.11.1.1 using:
/home/bnewbold/.stack/setup-exe-cache/x86_64-linux-nopie/Cabal-simple_mPHDZzAJ_1.22.4.0_ghc-7.10.2 --builddir=.stack-work/dist/x86_64-linux-nopie/Cabal-1.22.4.0 build --ghc-options " -ddump-hi -ddump-to-file"
Process exited with code: ExitFailure 1
Logs have been written to: /home/bnewbold/src/confluence-sync/.stack-work/logs/HsOpenSSL-0.11.1.1.log
Configuring HsOpenSSL-0.11.1.1...
Building HsOpenSSL-0.11.1.1...
Preprocessing library HsOpenSSL-0.11.1.1...
In file included from .stack-work/dist/x86_64-linux-nopie/Cabal-1.22.4.0/build/OpenSSL/EVP/Internal_hsc_make.c:1:0:
Internal.hsc: In function ‘main’:
Internal.hsc:112:15: error: invalid application of ‘sizeof’ to incomplete type ‘EVP_CIPHER_CTX {aka struct evp_cipher_ctx_st}’
/home/bnewbold/.stack/programs/x86_64-linux/ghc-nopie-7.10.2/lib/ghc-7.10.2/template-hsc.h:86:39: note: in definition of macro ‘hsc_size’
hsc_printf("(%ld)", (long) sizeof(t));
^
Internal.hsc:123:15: error: invalid application of ‘sizeof’ to incomplete type ‘EVP_CIPHER_CTX {aka struct evp_cipher_ctx_st}’
/home/bnewbold/.stack/programs/x86_64-linux/ghc-nopie-7.10.2/lib/ghc-7.10.2/template-hsc.h:86:39: note: in definition of macro ‘hsc_size’
hsc_printf("(%ld)", (long) sizeof(t));
^
Internal.hsc:223:15: error: invalid application of ‘sizeof’ to incomplete type ‘EVP_MD_CTX {aka struct evp_md_ctx_st}’
/home/bnewbold/.stack/programs/x86_64-linux/ghc-nopie-7.10.2/lib/ghc-7.10.2/template-hsc.h:86:39: note: in definition of macro ‘hsc_size’
hsc_printf("(%ld)", (long) sizeof(t));
^
compiling .stack-work/dist/x86_64-linux-nopie/Cabal-1.22.4.0/build/OpenSSL/EVP/Internal_hsc_make.c failed (exit code 1)
command was: /usr/bin/gcc -c .stack-work/dist/x86_64-linux-nopie/Cabal-1.22.4.0/build/OpenSSL/EVP/Internal_hsc_make.c -o .stack-work/dist/x86_64-linux-nopie/Cabal-1.22.4.0/build/OpenSSL/EVP/Internal_hsc_make.o -fno-stack-protector -D__GLASGOW_HASKELL__=710 -Dlinux_BUILD_OS=1 -Dx86_64_BUILD_ARCH=1 -Dlinux_HOST_OS=1 -Dx86_64_HOST_ARCH=1 -Icbits -D PTHREAD -DCALLCONV=ccall -I.stack-work/dist/x86_64-linux-nopie/Cabal-1.22.4.0/build/autogen -include .stack-work/dist/x86_64-linux-nopie/Cabal-1.22.4.0/build/autogen/cabal_macros.h -I/home/bnewbold/.stack/snapshots/x86_64-linux-nopie/lts-3.4/7.10.2/lib/x86_64-linux-ghc-7.10.2/network-2.6.2.1-F6mK9sCIw3M5SbZMt2lUQE/include -I/home/bnewbold/.stack/programs/x86_64-linux/ghc-nopie-7.10.2/lib/ghc-7.10.2/unix_A3WgcI5QiHK4PDo4jSYdwQ/include -I/home/bnewbold/.stack/programs/x86_64-linux/ghc-nopie-7.10.2/lib/ghc-7.10.2/time_AXTdBF9VRQoBOqJT6qtmVH/include -I/home/bnewbold/.stack/programs/x86_64-linux/ghc-nopie-7.10.2/lib/ghc-7.10.2/bytes_6elQVSg5cWdFrvRnfxTUrH/include -I/home/bnewbold/.stack/programs/x86_64-linux/ghc-nopie-7.10.2/lib/ghc-7.10.2/base_GDytRqRVSUX7zckgKqJjgw/include -I/home/bnewbold/.stack/programs/x86_64-linux/ghc-nopie-7.10.2/lib/ghc-7.10.2/integ_2aU3IZNMF9a7mQ0OzsZ0dS/include -I/home/bnewbold/.stack/programs/x86_64-linux/ghc-nopie-7.10.2/lib/ghc-7.10.2/include -I/home/bnewbold/.stack/programs/x86_64-linux/ghc-nopie-7.10.2/lib/ghc-7.10.2/include/
Which looks very similar to this bug in another project: https://git.snowdrift.coop/sd/snowdrift/issues/18
Currently page names are automatically title cased based on a few rules: my-file-name.md
becomes My File Name
as a page. This is nice for the common case but can make a few pages look extremely messy, especially where there is an acronym: ABC Learning
becoming Abc Learning
.
It would be fantastic if the user could specify whether to preserve the original casing of a file name.
One way to approach this is to embed this in-band. My current thinking is that appending a .
at the end of the file or directory name could be used to disable any case modifications. For example ABC-Learning..md
would become ABC Learning
, and a folder named ATMs.
would become ATMs
.
Gitbook provides some good presentation options. It would be good if the repo layout was compatible with gitbook, enabling us to publish to confluence, but also generate stand alone web pages and PDFs.
Test case tba.
(My name)[My-Name%20is%20Fred.md#anchortag]
fails to get rewritten when the My-Name is Fred.md
file exists.
I am not able to login using my confluence email and password.
confluence-sync-tool: user error (Error 0: java.lang.Exception: com.atlassian.confluence.rpc.AuthenticationFailedException: Attempt to log in user failed - incorrect username/password combination.)
Looks like it is because confluence XML-RPC APIs have been deprecated: https://developer.atlassian.com/server/confluence/confluence-xml-rpc-and-soap-apis/.
Is there any plan to support the REST APIs? #
user-MacBook-Pro:confluence-sync user$ time stack install -v
Version 1.3.2 x86_64 hpack-0.15.0
2017-03-01 19:31:14.926394: [debug] Checking for project config at: /Development/confluence-sync/stack.yaml
@(Stack/Config.hs:863:9)
2017-03-01 19:31:14.927290: [debug] Loading project config file stack.yaml
@(Stack/Config.hs:881:13)
2017-03-01 19:31:14.929373: [debug] Trying to decode /Users/eduardo.venancio/.stack/build-plan-cache/x86_64-osx/lts-3.4.cache
@(Data/Store/VersionTagged.hs:68:5)
2017-03-01 19:31:14.929489: [debug] Exception ignored when attempting to load /Users/eduardo.venancio/.stack/build-plan-cache/x86_64-osx/lts-3.4.cache: /Users/eduardo.venancio/.stack/build-plan-cache/x86_64-osx/lts-3.4.cache: openBinaryFile: does not exist (No such file or directory)
@(Data/Store/VersionTagged.hs:86:9)
2017-03-01 19:31:14.929620: [debug] Failure decoding /Users/eduardo.venancio/.stack/build-plan-cache/x86_64-osx/lts-3.4.cache
@(Data/Store/VersionTagged.hs:75:13)
2017-03-01 19:31:14.929723: [debug] Decoding build plan from: /Users/eduardo.venancio/.stack/build-plan/lts-3.4.yaml
@(Stack/BuildPlan.hs:496:5)
2017-03-01 19:31:15.743583: [debug] Trying to decode /Users/eduardo.venancio/.stack/indices/Hackage/00-index.cache
@(Data/Store/VersionTagged.hs:68:5)
2017-03-01 19:31:15.743729: [debug] Exception ignored when attempting to load /Users/eduardo.venancio/.stack/indices/Hackage/00-index.cache: /Users/eduardo.venancio/.stack/indices/Hackage/00-index.cache: openBinaryFile: does not exist (No such file or directory)
@(Data/Store/VersionTagged.hs:86:9)
2017-03-01 19:31:15.744004: [debug] Failure decoding /Users/eduardo.venancio/.stack/indices/Hackage/00-index.cache
@(Data/Store/VersionTagged.hs:75:13)
2017-03-01 19:31:15.744335: [debug] Run process: /usr/local/bin/git clone https://github.com/commercialhaskell/all-cabal-hashes.git all-cabal-hashes/ -b display
@(System/Process/Read.hs:306:3)
Updating package index Hackage (mirrored at https://github.com/commercialhaskell/all-cabal-hashes.git) ...Running /usr/local/bin/git clone https://github.com/commercialhaskell/all-cabal-hashes.git all-cabal-hashes/ -b display in directory /Users/eduardo.venancio/.stack/indices/Hackage/git-update/ exited with ExitFailure 128
Cloning into 'all-cabal-hashes'...
error: RPC failed; curl 56 SSLRead() return error -9806
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
real 36m53.507s
user 0m5.129s
sys 0m3.522s
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.