-
korobkov
Hello, all
-
korobkov
Could I ask for some help with darcs here?
-
korobkov
I feel to being unable to rename a depended-upon patch in my darcs repo. Is it possible at all?
-
sm[m]
I think the rebase command is the way
-
korobkov
I use `darcs amend --edit-long-comment -h <some_hash> -m <some-message>`
-
korobkov
And got "Skipping depended-upon patch: <the_hash>." … And then "Cancelling amend since no patch was selected."
-
korobkov
How should I use rebase for it?
-
sm[m]
Sorry, I don’t remember but is there a manual for it ?
-
korobkov
(I'm a very new darcs user and the actual task I'm trying to do is converting my old git repos with commit messages containing cyrillic characters. I was successful with direct `git-fast-export | darcs convert import` route as the resulting patch messages were somewhat incorrectly encoded. Then I decided to write a shell script, calling git-filter-repo with Python callback, base-64 encoding all the commit messages in-place before
-
korobkov
export, and a small program in Elixir, which should read and parse `darcs log --xml-output` and then issue `darcs amend` command for each comment with base64-decoded patch name)
-
korobkov
This is the last step in my path, and I feel being unable to solve this without the help (or some advice) from some darcs developers…
-
korobkov
Seems there should be some simplier way to do this. But I still didn't find any API to darcs to operate on a repo as a whole (somewhat like `git-filter-branch`).
-
sm[m]
korobkov: I see ! would it be an option to fix up all the names in git first, where the tools are much more powerful ?
-
korobkov
Yes :) You are right. And it would be much more simple for me if it would be possible for the names to be correctly imported by darcs!
-
korobkov
(If I create cyrillic messages from scratch they are listed in `darcs log` and exported all OK!)
-
korobkov
Seems the issue is only with `darcs convert import`…
-
sm[m]
hmm, I would research in the manual for anything encoding related then - I remember some environment variable..
-
korobkov
I've read that it's not all that simple with UTF-8 in Haskell, but as it already works pretty well with newly created patch names, the internal representation of patches should support it already.
-
korobkov
DONT_ENCODE_8_BIT?
-
korobkov
(or alike)
-
korobkov
Does it also affect UTF-8 somehow?
-
sm[m]
korobkov: I don't know.. also I assume you have a correct LANG set
-
» korobkov checking it…
-
korobkov
% env | grep LANG
-
korobkov
LANG=ru_RU.UTF-8
-
korobkov
LANGUAGE=
-
sm[m]
the darcs manual is no longer online, that's unfortunate
-
sm[m]
darcs help manpage or markdown produces it, and I see a lot of env vars there, is that what you're reading ?
-
sm[m]
I wonder if DARCS_DONT_ESCAPE* help
-
korobkov
Thank you, I'll try…
-
sm[m]
I don't see any DONT_ENCODE there
-
sm[m]
maybe those only affect terminal display, not sure
-
sm[m]
Heffalump might know more.. good luck!
-
korobkov
Thank you once again. Hope he could help with it.
-
korobkov
Should I ask him here or elsewhere (e.g. via email)?
-
korobkov
How do people get answers if they are from different timezones? (I'm somewhat new to IRC…)
-
sm[m]
korobkov: he'll see it here in due course
-
korobkov
That,s OK. :) I'm concerned about viewing channel logs at tomorrow morning, should I have any reboot at night… (as I've heard the logs arebt provided online due to GDPR…)
-
sm[m]
ah, not this channel has a decent log - see the /topic
-
sm[m]
s/not/no/
-
korobkov
currently still unable to connect to
freenode.logbot.info/darcs …
-
sm[m]
korobkov: that's unfortunate, it works fine here
-
sm[m]
another option is to connect via the Riot matrix client, which is good at tracking history and notifications
-
sm[m]
or just ask again next time you're online, he'll probably be around
-
sm[m]
and/or, search/ask the darcs-users mail list
-
korobkov
It may be very likely due to all kinds of internet restrictions in russia in general… :(
-
sm[m]
:(
-
korobkov
I would ask next time in case of disconnect
-
sm[m]
sounds good
-
korobkov
Just tried `git fast-export master | ( setenv DARCS_DONT_ESCAPE_8BIT 1 ; darcs convert import <path> )`. No luck
-
korobkov
Just tried `git fast-export master | ( setenv DARCS_DONT_ESCAPE_ANYTHING 1 ; darcs convert import <path> )`. No luck either
-
korobkov
It all looks like * РазвÑ<U+0091>Ñ<U+0080>Ñ<U+0082>Ñ<U+008B>вание пеÑ<U+0080>еведено на Ñ<U+0081>Ñ<U+0085>емÑ<U+0083> :remote_cache по ipv6 (без пÑ<U+0080>окÑ<U+0081>и)
-
korobkov
Double encoded?
-
sm[m]
korobkov: I see the same
-
sm[m]
-
sm[m]
probably it needs fixing, posting on some of those issues might get a fix from bf ("I have a patch for this and a few other convert related issues. Stay tuned.")
-
korobkov
So, some hope for me? :)
-
korobkov
(Either way I'm not about giving up with using Darcs! :) I'll just will use it for all my new repos. (Too sad I didn't know much about Darcs 10 years ago… I for sure would chose it instead of git))
-
sm[m]
how long have you been using git ?
-
korobkov
from somewhat 2007-2008 (I was learning Ruby then)
-
sm[m]
once you've gone through the pain of learning git, it's kind of unusual to move back to darcs
-
korobkov
(now am fond of Elixir (and functional languages in general), but have to use python at work…)
-
sm[m]
do you prefer the simplicity for yourself, or for others you are collaborating with ?
-
korobkov
I do all and anything myself alone (small projects)
-
korobkov
I liked Darcs for it being functional and have a proper theory behind it
-
korobkov
(also heard of Pijul, tried it, but feel its not ready yet)
-
sm[m]
Right, it’s not
-
sm[m]
well, welcome
-
korobkov
I'm rather new to simplicity at all (3 months on FreeBSD after 15 years on GNU/Linux)
-
korobkov
:)
-
sm[m]
I’m hardly using darcs myself but I maintain
hub.darcs.net, you might find it interesting
-
korobkov
Now learn sr.ht, tcsh and like how simple things could be while still working
-
sm[m]
oh does sr.ht support darcs ?
-
korobkov
-
korobkov
I very much want them to support Darcs, still not sure
-
sm[m]
cool
-
korobkov
:)
-
korobkov
Idecided to rewrite all my school/university works on Elixir ;)
-
korobkov
Was on Github and Gitlab before, but became fond of simple things. Hope not too late (hope they will still exist out there)
-
sm[m]
more people are learning about simplicity every day ! :)
-
korobkov
:) My newest simple things are gemini:// and gopher:// via Elpher (I really like EMACS :))
-
korobkov
I was very impressed how the Internet could work without JS and uBlock-like filters
-
korobkov
I even liked the idea of creating my own site in gemini:// space (very simple markup), but have nothing to say to the world…
-
sm[m]
You can always start with “how I made this blog” :)
-
korobkov
I've also read about your (Darcs) way of doing CI (
darcs.net/Development/BuildBot)
-
sm[m]
I haven’t heard of Gemini:
-
korobkov
while being a web programmer, I still don't have any site/blog :)
-
korobkov
Gemini is very, very new really
-
sm[m]
I will just warn you, a lot of folks still love darcs but many docs are out of date
-
korobkov
(at least I could have a simple personal page)
-
sm[m]
there’s no buildbot now
-
sm[m]
(Afk a little. See you o/)
-
korobkov
thank you for the warning, I feel sad seeing at bugtracker with lots of open bugs and near no activity…
-
korobkov
OK
-
korobkov
I will read more about creating blogs, but are you really sure every person could/should have one? Isn't it more than enough information on the net already? What unique things should one have to start a blog?
-
korobkov
-
korobkov
No buildbot? I hoped it could be some alternative to sr.ht… Sad… :(
-
korobkov
It all looks like I came too late… But I still hope it wouldn't go away completely! More people coming with simple things mindset may fix old issues, or even create something new (like Pijul)
-
korobkov
About git: I didn't find it too much difficult to learn/use (at least for my own simple cases, and especially with Magit (EMACS git helper)), but being forced to use python while still being fallen in love with Elixir made me think a lot about harm of the monocultures…
-
korobkov
When I was writing in Ruby, there were no other ruby programmers around in our university. But now Elixir is seeming even more experimental, and I just wasn't adviced/allowed to continue with it. While I myself see any functional languages being very niche and not having very mature library ecosystems, I didn't insist on starting next project in Elixir.
-
korobkov
After such lesson, I started to look around in search of rarely used technologies to find if they are still shine, even abandoned by majority
-
korobkov
About hub.darcs.net: I always was a Free Software developer (all my code, except drafts is free), and while having accounts first at github, then at gitlab, I thought my code would be of some use by people (clones, forks, issues), but as my projects were too small and somewhat specific to our university, seems no one else actually do/will use them. So, Darcs hub is in no way less good for me, than gitlab, while being much more
-
korobkov
simple. :)
-
» Heffalump appears
-
Heffalump
re amending a depended-on patch, yes, use rebase. "rebase suspend" to suspend the depending patch, amend the depended-on patch, "rebase unsuspend" to get back the suspended patch
-
korobkov
thank you, Heffalump, I hope it should help, but my task in general is to amend the whole repo at once (like in `git-filter-branch`) to be able to import my old git repos, containing cyrillic patch names
-
Heffalump
korobkov: if you're just doing an import why do you need to amend old patches?
-
korobkov
while having cyrillic patch names works well with newly created darcs repos, there still seems to be some encoding issues while importing fromgit
-
Heffalump
oh, right
-
Heffalump
well, you could rebase suspend the entire repo then unsuspend it
-
korobkov
I could try it, OK
-
Heffalump
FYI there is a reasonable amount of activity on the darcs-devel mailing list (and collaterally on some of the active tickets) though only really between two of us (me and Ben Franksen)
-
korobkov
glad to hear it :) So there is some hope for me for improving import on Darcs side?
-
korobkov
(export fully OK with cyrillic)
-
korobkov
thank you for mentioning it, Ive just requested subscription to the darcs-devel
-
korobkov
while not knowing Haskell at all (just a litlle of Elixir) I may possibly help with some testing things
-
korobkov
(as I plan to use Darcs as my promary and only VCS and Darcs hub as my priary and only public repository)
-
Heffalump
are you using darcs binaries or did you build it yourself? I think Ben did make some fixes to convert in the 'screened' repository (i.e. the latest development branch, not fully reviewed)
-
Heffalump
It also broke the test on Windows which will still need to investigate, but hopefully it did make things better on non-Windows :-)
-
korobkov
I like to build everything from source myself! :) And I already built everything myself (FreeBSD). It's like baking my own bread (yes, I really bake my own bread :))
-
korobkov
sorry, I didn't have/use any Windows since 2006 :)
-
korobkov
(neither at home, nor at work, nor anywhere else)
-
Heffalump
so if you grab this repo and build it, you'll have the latest development code:
darcs.net/screened
-
Heffalump
slightly more stable is
darcs.net/reviewed
-
korobkov
I already have GHC (as part of building Darcs port), but am new to Haskell. Still want to build it myself :)
-
korobkov
would read manuals about it, OK
-
Heffalump
if you managed to build darcs from the released version, you should be able to build one of those branches quite easily. Just have a look and see if your import issue is already fixed.
-
Heffalump
and, if it's not, maybe you could write a test case that shows what's wrong (it would go in tests/failing_XXX)
-
korobkov
Never thought of my acquaintance with Haskell would be like this :) Still no panic, just need some time to sleep! :)
-
Heffalump
:-)
-
korobkov
and how would my custom build coexist with system darcs?
-
korobkov
(or should I just make a special FreeBSD jail for experiments with Haskell stack)?
-
Heffalump
except if you use rebase, the on-disk repo format will be compatible
-
Heffalump
so it'll co-exist pretty safely, just use whichever binary you want at any given time
-
korobkov
OK, thank you
-
Heffalump
if you do a rebase then I'd stick with the production version for now, because we are messing around with the format (particularly in 'screened').
-
» korobkov is trying to build haskell stack from source…
-
» korobkov is going to supper/sleep mode…
-
Heffalump
FWIW personally I use cabal rather than stack, so can better help with problems with that
-
Heffalump
though AFAIK stack also works fin
-
Heffalump
e
-
korobkov
so no need in building the whole stack?
-
Heffalump
if you already have cabal then nope
-
Heffalump
that has fewer dependencies to build from source
-
Heffalump
(of course with a bootstrapped language like Haskell you will always be depending on a binary _somewhere_ :-) )
-
korobkov
still deosn't have, but should build likely without issues
-
korobkov
:) It took some hours to build GHC :) (not enough RAM)
-
korobkov
OK, % cabal --version
-
korobkov
cabal-install version 2.4.0.0
-
korobkov
compiled using version 2.4.0.1 of the Cabal library
-
» korobkov is cloning Darcs from your repositories…
-
Heffalump
so in a darcs source tree, cabal v2-build darcs should get you a darcs binary (or cabal v2-install darcs to also copy it to your .cabal/bin folder)
-
» korobkov is still copying pristine…
-
korobkov
like to hve some compiling ahead (While was on Gentoo I liked to sit and look at GCC output… :))
-
korobkov
on FreeBSD quarterly there not a lot of things to compile (while on ports tree head still too much to compile every day :))
-
korobkov
% ghc --version
-
korobkov
The Glorious Glasgow Haskell Compilation System, version 8.6.5
-
korobkov
would be OK?
-
korobkov
% nice cabal v2-install darcs
-
korobkov
cabal: Ambiguous target 'darcs'. It could be:
-
korobkov
exe:darcs (component)
-
korobkov
lib:darcs (component)
-
korobkov
exe, likely?
-
korobkov
(or both)?
-
Heffalump
exe:darcs
-
Heffalump
yes, 8.6.5 is good, it's the one I use
-
Heffalump
I think
-
korobkov
Yes, it's building:
-
korobkov
darcs-2.15.2 and shelly-1.7.1 :)
-
Heffalump
yeah, we ended up (hopefully) temporarily inlining shelly into the darcs code because upstream kept breaking
-
korobkov
so, screened is building, while reviewed is still copying patches
-
Heffalump
that's a bit surprising, because they get cached, and reviewed is a subset of screened
-
Heffalump
so I'd expect it to find the cached ones now rather than re-downloading them
-
korobkov
should I check my darcs cache config?
-
korobkov
what am I to provide?
-
Heffalump
it should happen by default - you could check the contents of ~/.darcs/cache - but maybe it's not worth worrying about too much
-
Heffalump
you'll get reviewed downloaded in the end :-)
-
korobkov
I'm never in a hurry (while still have some hope to have supper while my server is compiling the Darcs ;)
-
korobkov
done with dependencies, now the darcs itself
-
korobkov
seems strange that Haskell utilize only one CPU core (while Erlang/Elixir use all in parallel..
-
Heffalump
might be a bad default - -j should cause a parallel build
-
korobkov
so, the language itself is fully thread-safe, isnt it?
-
Heffalump
yep, and has a parallel runtime
-
korobkov
glad to know :)
-
korobkov
… done
-
korobkov
% ~/.cabal/bin/darcs --version
-
korobkov
2.15.2 (unknown)
-
Heffalump
great
-
korobkov
lets test with my issue…
-
korobkov
no, it's still there :(
-
korobkov
* Ð<U+009E>бновленÑ<U+008B> gem-Ñ<U+008B>
-
Heffalump
:-(
-
korobkov
but now I've compiled custom darcs first time :)
-
Heffalump
Feel free to raise a new issue, or comment on an existing one. While the issue tracker is a bit of a mess of old unloved issues, there is at least some chance it'll get looked at
-
korobkov
OK, I'll try this
-
Heffalump
encoding is a bit of a disaster area, for reasons I don't fully understand :-/
-
Heffalump
(in the darcs code that is)
-
korobkov
in Darcs, or in Haskell in general?
-
korobkov
where in the code should I look first (on import)?
-
Heffalump
in darcs
-
Heffalump
umm, Darcs.UI.Commands.Convert I think
-
Heffalump
src/Darcs/UI/Commands/Convert/Import.hs I guess
-
korobkov
what should I know about encodings in darcs (how things supposed to work)?
-
Heffalump
that's where I get a bit confused.
-
korobkov
(I meant some specs or other documentation on encodings)
-
korobkov
(or the code itself is self-speaking enough)?
-
Heffalump
well, I'm not sure there's any more authoritative source, let me put it that way
-
korobkov
From bugtracker I've heard of some difference in handling data in patch names and content
-
korobkov
is it on purpose?
-
korobkov
(I meant, is it something that may/should be fixed)?
-
Heffalump
by content you mean the actual diffs, right? I guess you would never want those to get translated.
-
korobkov
yes
-
Heffalump
Whereas patch names you want to display helpfully to the user, so there are cases where you want to re-encode them.
-
Heffalump
I _think_ the overall idea is that they should be stored as UTF-8.
-
korobkov
I just thought that patchnames may also live without any intervention from Darcs…
-
korobkov
aren't they already storead as UTF-8?
-
Heffalump
yes, but that requires intervention from darcs, if you as the person recording them isn't using UTF-8.
-
Heffalump
But clearly nowadays most people will be using UTF-8, and something is going wrong for you.
-
Heffalump
but this is where I don't want to claim too much about what should have happened for fear of getting it wrong
-
korobkov
maybe in some future versions there wouldn't be any need for support of encodings, other than UTF-8?
-
Heffalump
I think if it was being written from scratch now, there would have been a stronger assumption around that.
-
korobkov
or may be I could just compile my custom version of Darcs, just for importing, as export is already OK
-
Heffalump
But what we have now has evolved over time leading to the messier situation.
-
korobkov
may be just some simple workaround?
-
Heffalump
I'm not quite sure what you'd change though.
-
korobkov
I understand; at that time not all was good with encodings…
-
korobkov
I'm trying to understand, at which point/stage exported UTF-8 stream from git is being corrupted/reencoded/stored in non-UTF way
-
Heffalump
I assume your own shell/environment is UTF-8?
-
korobkov
could it be possibly stored as-is
-
korobkov
yes, for sure
-
Heffalump
just having a quick look through the code
-
korobkov
fully UTF-8 (since that old 2007-2008 years of that old repos)
-
korobkov
that repos were created with the same LANG=ru_RU.UTF-8
-
Heffalump
makeinfo author message tag = do
-
Heffalump
let (name, log) = case BC.unpack message of
-
Heffalump
"" -> ("Unnamed patch", [])
-
Heffalump
msg -> (head &&& tail) . lines $ msg
-
Heffalump
(author'', date'') = span (/='>') $ BC.unpack author
-
Heffalump
the BC.unpack in that code looks highly suspicious
-
Heffalump
as do all the Char8 imports at the top of the file
-
Heffalump
doing that basically screams "screw up non-ASCII characters" :-)
-
Heffalump
because those modules are just about wrongly converting a stream of bytes into a stream of characters by just embedding them as 8-bit patterns.
-
Heffalump
(or vice-versa by truncating)
-
korobkov
so, you already know what's happening? :)
-
Heffalump
well, sort of. As I said, it looks suspicious. I'm not quite sure what the simplest fix would be.
-
Heffalump
also, export is using Char8 heavily too and you say that's not broken
-
korobkov
let me try it once more…
-
korobkov
% d l
-
korobkov
patch 6cb43d23fd31c49bdadd716e68e321e17d53ae89
-
korobkov
Author: Andrey Korobkov <alster⊙vs>
-
korobkov
Date: Wed Jun 10 01:51:27 +04 2020
-
korobkov
* Тест UTF-8
-
korobkov
this is darcs log
-
korobkov
from a newly created repo
-
korobkov
and now export…
-
korobkov
% darcs convert export
-
korobkov
progress (reading repository)
-
korobkov
progress 1: Тест UTF-8
-
korobkov
commit refs/heads/master
-
korobkov
mark :1
-
korobkov
committer Andrey Korobkov <alster⊙vs> 1591739487 +0000
-
korobkov
data 14
-
korobkov
Тест UTF-8
-
korobkov
M 100644 inline test.hs
-
korobkov
data 8
-
korobkov
Тест
-
korobkov
progress (patches converted)
-
korobkov
progress (cleaning up)
-
korobkov
progress done
-
korobkov
all seems pretty OK, should I also test this stream on `git fast-import` ?
-
Heffalump
I'm just making a quick patch to test my theory, if it builds locally you could give it a go.
-
korobkov
% git log
-
korobkov
commit a837ff723e02be8a0d3d89134ec2329ec54a1e67 (HEAD -> master)
-
korobkov
Author: Andrey Korobkov <alster⊙vs>
-
korobkov
Date: Tue Jun 9 21:51:27 2020 +0000
-
korobkov
-
korobkov
Тест UTF-8
-
korobkov
Absolutely OK!
-
korobkov
(including patch data)
-
korobkov
(this all is on system darcs 2.14.2)
-
korobkov
Thank you in advance! :) I would like to build and try it myself too…
-
Heffalump
-
Heffalump
due to some really annoying problems with Windows and my corporate remote access software getting in the way, it took me longer to upload that somewhere than it did to write and build it locally
-
Heffalump
note that I haven't actually run it at all, but it does type-check :-)
-
korobkov
:) :) Let me clone and build it…
-
korobkov
got this:
-
korobkov
-
korobkov
Copying patches, to get lazy repository hit ctrl-C...
-
korobkov
Exception while getting patches pack:
-
korobkov
user error (Couldn't fetch `0000006835-3972772fbe917c5eb4d79be799b48f34ca18dc39bb01b958a1789041a2d7b4a2'
-
korobkov
in subdir patches from sources:
-
korobkov
-
korobkov
thisrepo:/usr/home/korobkov/work/devel/darcs/darcs-import-utf8-hack
-
korobkov
cache:/home/korobkov/.cache/darcs
-
korobkov
repo:.
-
korobkov
repo:https://urchin.earth.li/darcs/ganesh/temp/darcs-import-utf8-hack
-
korobkov
)
-
Heffalump
bah
-
korobkov
-
korobkov
darcs failed: Couldn't fetch `0000006835-3972772fbe917c5eb4d79be799b48f34ca18dc39bb01b958a1789041a2d7b4a2'
-
korobkov
in subdir patches from sources:
-
korobkov
-
korobkov
thisrepo:/usr/home/korobkov/work/devel/darcs/darcs-import-utf8-hack
-
Heffalump
does the new repo exist now? if so go into it and do a darcs pull
-
korobkov
cache:/home/korobkov/.cache/darcs
-
korobkov
repo:.
-
korobkov
repo:https://urchin.earth.li/darcs/ganesh/temp/darcs-import-utf8-hack
-
Heffalump
oh, wait, the permissions may be screwed up
-
korobkov
OK
-
korobkov
I'll retry when you say it's ready
-
korobkov
I'm able to see it in browser
-
korobkov
file content is also accessible
-
Heffalump
ok, I fixed the permissions. It was that one specific patch. Try the 'darcs pull' from inside the repo you cloned already.
-
Heffalump
no, not just that one specific patch, hangon
-
korobkov
its not cloned for me… :(
-
Heffalump
right, now really try
-
Heffalump
ok, just redo the clone then
-
korobkov
OK
-
korobkov
Copying patches, to get lazy repository hit ctrl-C...
-
korobkov
seems OK now, thank you :)
-
sm[m]
korobkov: "I started to look around in search of rarely used technologies to find if they are still shine, even abandoned by majority" - I like this! And thanks for mentioning Gemini, it sounds fun
-
korobkov
Finished cloning.
-
korobkov
:) :) I glad to hear you like it. A also liked Gemini such to even decided to have my personal internet presence point (they cll it "Capsule" only in Gemini, not in WWW)
-
» korobkov is building new darcs with utf-8 patch…
-
korobkov
A good and helpful community is another bright side of some rare technologies. While mainstream techs have lots of documentation and forums and all that stuff, more simple techs could even not require such amount of knowledge at all :)
-
Heffalump
darcs is reputed to have an intuitive UI. I've been using it so long it's hard for me to really know if it is or not ;-)
-
korobkov
:)
-
sm[m]
I suspect some of the flags could be more intuitive/ergonomic
-
korobkov
For me to write classic (even not SPA) WWW application I should know not only DB and backend (which I do like), but lots and lots of frontend frameworks (I really don't, so just have to use pre-made components, or Django). In Gemini/Gopher space all could be much simpler.
-
sm[m]
and the are you sure prompts >:|
-
sm[m]
but I think it's intuitive overall, very much compared to git
-
-
sm[m]
no gemini server yet!
-
korobkov
They think good server/client could be written by weekend in 1-2 hundreds LOC
-
korobkov
rather impressive after firefox/chromium
-
korobkov
About darcs and flags: I like the idea of preset flags via config ;)
-
korobkov
git doesn't have it
-
sm[m]
that can be handy when you don't like the defaults, but can also create more failure modes and complicate troubleshooting
-
korobkov
About git: Ive learned it before darcs and didn't find it too difficult for my own simple tasks, but only unless things need to go even little harder: I use only rebase workflow (without merges, so I actually needed Darcs from start, not git). And when rebasing the same patches once and once again it always went south.
-
korobkov
Until I've read the problem is already known and is fixed by using patch-based VCS-es.
-
sm[m]
I really like git's command aliases
-
sm[m]
(and I really needed them!)
-
sm[m]
(and now my git commands are unique to me and not really shareable!)
-
korobkov
never heard of them before (always thought it is done on OS shell level…)
-
korobkov
my current difficulties with darcs is somewhat unevident patch dependencies
-
sm[m]
you can define them under [alias] in ~/.gitconfig. Super convenient, made git usable for me
-
korobkov
-
Heffalump
the UI tries to do the right thing with depenendencies implicitly, but I agree it can be confusing
-
Heffalump
there is some graphviz output to visualise them
-
sm[m]
[alias]
-
sm[m]
l = log --format='%C(yellow)%ad %Cred%h%Creset %s%C(bold blue)%d%Creset' --date=short -10
-
sm[m]
sort of thing.
-
korobkov
sm[m]: thnak you for advices in git, but I really hope I wouldn't need it at all after fully switching all my works to darcs :)
-
sm[m]
my darcs equivalent has to be managed in the shell config:
-
-
sm[m]
re dependencies, it looks like hub's /patches shows them but /changes does not:
hub.darcs.net/simon/darcsden/patches
-
korobkov
Heffalump: I have absolutely nothing agains UI, my words were about darcs thinking of patches as dependent, even they have in common just neighboring lines (may be its so intended)
-
Heffalump
korobkov: ah, that's kind of necessary because of the theory
-
Heffalump
if two hunks touch (rather than overlap) then they cause a dependency unless both of them both add and remove lines
-
Heffalump
(I think that's the rule)
-
Heffalump
if both of them just add or both of them just remove, darcs wouldn't be able to put them back in the right order after a cherry pick
-
korobkov
-
korobkov
semantically the patch shouldnt be thought as dependent on previous one, but darcs marks is as such, just because of single comma! :)
-
Heffalump
ah yes. That's a general problem with VCS and lists though
-
Heffalump
I try to format my code so adding new elements at the end of things doesn't change the previous line.
-
sm[m]
can you use leading comma style ?
-
korobkov
sm[m]: never thouth of it, as I usually like the defaults and just used to like them after some time
-
korobkov
I dont think it's bad at all, just need some accuracy while merging
-
sm[m]
yeah. Some languages allow a trailing comma to help with this
-
sm[m]
it's too much to ask a general-purpose VCS to know if that comma is important, I think
-
sm[m]
so darcs has to assume it is
-
korobkov
ruby have %W() syntax, Elixir also have sigills, but they arent useful for dependency declarations, as they are not always simple
-
korobkov
another issue is positioning blank line before newly added method at the end of file
-
korobkov
sorr, not able to illustrate with the code, ok
-
Heffalump
korobkov: did you manage to try that patch yet btw? (no worries if not, just wondering)
-
korobkov
near forgotten about it, sorry :( was building all this time
-
korobkov
had built, trying…
-
korobkov
sorry, Fremantle монÑ<U+0082>иÑ<U+0080>Ñ<U+0083>еÑ<U+0082>Ñ<U+0081>Ñ<U+008F> на коÑ<U+0080>невой URI
-
Heffalump
hmph
-
korobkov
still not got it… :(
-
korobkov
git fast-export master | ~/.cabal/bin/darcs convert import <path>
-
Heffalump
I think your best bet would be to construct a shell test that tests for the 'correct' output, it'd make it easier for a developer to experiment with the code
-
korobkov
~/.cabal/bin/darcs --version
-
korobkov
2.15.2 (unknown)
-
korobkov
OK, it would be simplier even for myself to test
-
korobkov
what should I return in case of success/error?
-
korobkov
what are input parameters?
-
Heffalump
fail (i.e. non-zero exit code) for error, success (zero exit code) for success :-)
-
korobkov
as ususal :)
-
Heffalump
look at one of the scripts in tests/ for an example, they all follow a similar pattern
-
Heffalump
you could just attach it to the bug report, or name it failing-issueXXXX-convert-import-utf8.sh or something like that and send in a patch with some name like "accept issueXXXX: convert import double-encodes Russian characters"
-
korobkov
what shell should I use? bash-compatible?
-
Heffalump
yes, bash (if you look at our scripts they all start with #!/usr/bin/env bash
-
korobkov
thank you for your work, so now we are sure they are double-encoded
-
korobkov
sorry, I'm too sleepy now :)
-
korobkov
of course it's bash :)
-
korobkov
so, I could even send it by email and it would work? Never had sent one by email, but many times heard it was the main way of sending patches some time ago. Should it work now?
-
Heffalump
yep, though darcs now defaults to not doing it because so few people have sendmail configured
-
Heffalump
but if you have it configured ok, then darcs send --mail in a clone taken from screened will automatically send the patch to our tracker
-
korobkov
is it so difficult to config it such a way?
-
korobkov
where could I read about it? (it's one of the things I like darcs for)
-
Heffalump
-
Heffalump
or darcs send --help
-
korobkov
OK, I'll try it to learn do things the ways they are expected to be done :)
-
korobkov
(but my Gnus in EMACS is also very good)
-
Heffalump
you can also just let it save a file, and attach the file to the patch tracker directly
-
korobkov
yes, of course, but sometimes I still use majordomo to subscribe to mailing lists :)
-
Heffalump
:-)
-
korobkov
:)
-
Heffalump
I stopped running majordomo a few years back. I liked it, but it was just a bit too clunky and hard to manage compared to mailman.
-
korobkov
things were working even before www…
-
korobkov
that's another reason for me to still use some old techs, as if no one would, then they could just disapper, and world would became more sad place (`man monoculture`)
-
korobkov
and once again, seems like I've came too late for lot of interesting thins of the past
-
korobkov
well, if I could write proper test for cyrillic import it could help some other people to continue to use darcs :)
-
korobkov
(and me counting first)
-
korobkov
and what would be the future of the hub.darcs.net? Isn't it too difficult to run? Won't it dissappear?
-
Heffalump
sm[m] runs it. I think if he stopped I'd try to step up. But as with most of the darcs setup we don't have the critical mass to guarantee anything forever.
-
sm[m]
korobkov: it's not too difficult so far. But I only provide "essential maintenance" for a few years now
-
korobkov
A'm not at all about any guarantees :) Just to be sure you are not tired with it enough to abandon it all…
-
sm[m]
when darcs gets more active, darcs hub gets more interesting
-
sm[m]
no, don't worry it's not in danger, and if I stop I'll ensure a handover
-
sm[m]
one of these days some way forward will open up
-
korobkov
sm[m]: glad to hear
-
sm[m]
trying to get the rest of my projects/life in order, maybe that will help :)
-
korobkov
it would be too sad to lose darcs hub
-
sm[m]
I would like to spend the time to find out what's happening on darcs hub :)
-
sm[m]
and set up a way to communicate with users
-
korobkov
aren't mailing list and irc channel not enough?
-
sm[m]
darcs hub users aren't the same
-
korobkov
well
-
sm[m]
(I don't know how much the overlap is)
-
sm[m]
last time, I exported all email prefs into a mailchimp list, which was super manual
-
sm[m]
and has to be redone each time
-
korobkov
of course I wouldn't wish you more manual work just to support old techs
-
korobkov
I'm hee not to change the way things are going. I've just found nice, simple and useful tool and supporting repostory hub to use for all my projects, and want to fix some issues, which prevent me from use it for one and every of my projects. ^)
-
korobkov
sm[m]: I also don't think or say all new techs are all that bad. I was able to open your matrix link in my eww browser in EMACS :)
-
korobkov
As long as the tools are federated, not centralised, I could make use of them (while I strongly prefer the ones, which could be run from the EMACS «operating system») :)
-
korobkov
sm[m]: , Heffalump: thank you all for your time and your work to help me. Now I really need some food and rest.
-
korobkov
See you later, and I will learn how to write tests for darcs to make one for cyrillic import.
-
» korobkov is going offline and promising to return…
-
sm[m]
np, night korobkov !
-
korobkov
:)