Fossil

Changes On Branch sebyte
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Changes In Branch sebyte Excluding Merge-Ins

This is equivalent to a diff from 93266c5151 to 7c861cee5b

2024-06-05
15:12
Fix the 'describe' command to use only direct ancestors, and add a safety limit on the recursive CTE. check-in: 1cc2da2ee0 user: danield tags: trunk
2024-06-04
16:21
*** No message *** Leaf check-in: 7c861cee5b user: sebyte tags: sebyte
14:19
Merge trunk. check-in: 1dc13ea1fd user: sebyte tags: sebyte
2024-06-03
06:46
Resolve memory leaks in the SVN import which can cause large imports to hit OOM, reported in [forum:bb19df2426679bfc|forum thread bb19df2426679bfc]. check-in: 93266c5151 user: stephan tags: trunk
2024-05-30
17:24
Update the built-in SQLite to the latest pre-release trunk 3.47.0 for testing. check-in: 44f067d2ad user: drh tags: trunk

Changes to .fossil-settings/ignore-glob.

1
2
3
4
5
6
7
8
9



1
2
3
4
5
6
7
8
9
10
11
12









+
+
+
compat/openssl*
compat/tcl*
compat/zlib/contrib/ada/*
compat/zlib/doc/*
fossil
fossil.exe
win/fossil.exe
*shell-see.*
*sqlite3-see.*
bld/*
msvcbld/*
autosetup/jimsh0

Added src/Mashfile.








































































































































































1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
# src/Mashfile

# Commentary
#
# • A collection of code inspection utilities.
#
# • Common commands are those that don't begin 'test-' or end with an
#   asterix.

# --------------------------------------------------------------------

generate_tags_file () {
    etags --no-defines *.c;
    fossil diff --brief TAGS; }

# --------------------------------------------------------------------
# Commands

# Command regexp
C_RE='^\*\* COMMAND:'

# Common command regexp
CC_RE='^\*\* COMMAND: +(?!test-)[a-z-]+$'
#                      '---.---'
# negative lookahead ------'

REPO_FUNCS_RE='process_sync_args|find_'
REPO_FUNCS_RE="${REPO_FUNCS_RE}(repository_option|and_open_repository)"

all_commands () { # 254
    grep -Eh "$C_RE" *.c | gawk '{print $3}' | sort; }

all_commands_that_accept_the_repo_arg () {
    grep -Eh "($C_RE|$REPO_FUNCS_RE)" *.c; }


common_commands () { # 52
    grep -Ph "$CC_RE" *.c | gawk '{print $3}' | sort; }

common_commands_that_accept_the_repo_arg () {
    grep -P "($CC_RE|$REPO_FUNCS_RE)" *.c; }

# --------------------------------------------------------------------
# Common commands
#
# • Divide the common commands into four categories:
#
#    Taking option R, documented
#    Taking option R, undocumented
#    Not taking option R
#    Other
#
# • Use target `check_comcoms_all' to confirm that all common commands
#   are in one (and only one) category.  Works by comparing
#   'hardcoded' categories against the output of running `fossil help'
#   without args.


# Four categories

comcoms_taking_option_r_documented () {
    # HOOK: (occur "^  " -1)
    #
    # List complete.
    #
    # `branch' requires a subcommand.
    for each in $(comcoms_according_to_help); do
        fossil help $each | grep -E "^ *(Usage:|-R|--repository)"
    done; }
COMCOMS_TAKING_OPTION_R_DOCUMENTED="branch cat info ls pull push sql
sync timeline"

comcoms_taking_option_r_undocumented () {
    # HOOK: (occur "use --repository or -R")
    #
    # Enter Occur-Edit mode, remove commands listed above and add
    # `bundle', `git' and `settings'.
    #
    # (`bundle export' & `git export' each accept the option).
    call_each_comcom_wihtout_args; }
COMCOMS_TAKING_OPTION_R_UNDOCUMENTED="amend bundle git grep publish
rebuild remote-url settings tag unpublished unversioned"

comcoms_not_taking_option_r () {
    # HOOK: (occur "not within an open checkout")
    #
    # Enter Occur-Edit mode and remove `ls'.
    call_each_comcom_wihtout_args; }
COMCOMS_NOT_TAKING_OPTION_R="add addremove annotate bisect blame
changes clean commit delete diff extras finfo gdiff merge mv praise
revert rm stash status ui undo update"

comcoms_other () {
    # HOOK: (occur "Usage: fossil")
    #
    # Enter Occur-Edit mode, remove `bundle' and add `version'.
    call_each_comcom_wihtout_args; }
COMCOMS_OTHER="all clone help import init open version"

# categories combined

COMCOMS_TAKING_OPTION_R="
$COMCOMS_TAKING_OPTION_R_DOCUMENTED
$COMCOMS_TAKING_OPTION_R_UNDOCUMENTED"

COMCOMS_ALL="
$COMCOMS_TAKING_OPTION_R
$COMCOMS_NOT_TAKING_OPTION_R
$COMCOMS_OTHER"

check_comcoms_all () {
    local hardcoded_comcoms=$(sort_args $COMCOMS_ALL)
    local hardcoded_count=$(count_args $hardcoded_comcoms)
    local help_comcoms=$(comcoms_according_to_help)
    local help_count=$(count_args $help_comcoms)
    echo -n "$hardcoded_count: "
    write_line $hardcoded_comcoms; echo
    echo -n "$help_count: "
    write_line $help_comcoms; echo; }

# one more category

comcoms_taking_subcommands () {
    for each in $(comcoms_according_to_help); do
        fossil help $each | grep SUBCOMMAND
    done; }
COMCOMS_TAKING_SUBCOMMANDS="all bisect branch bundle stash tag
unversioned"

# Utils

comcoms_according_to_help() {
    for each in $(fossil help | tail -n +3 | head -n -1);
    do echo $each; done | sort; }

call_each_comcom_wihtout_args () {
    # Three commands 'work' when called without args: `help',
    # `settings' and `version'.  The rest fail in one of three ways:
    #
    #  "current directory is not within a open checkout"
    #  "Usage: fossil ..."
    #  "use --repository or -R to specify the repository database"
    #
    # with the exception of the `export' command, which fails with:
    #
    #  "specify the repository name as a command-line argument"
    #
    for each in $(comcoms_according_to_help); do
        echo -n $each:\  ; fossil $each; echo
    done; }

count_args () { echo $#; }
sort_args  () { for each in $*; do echo "$each"; done | sort; }
write_line () { for each in $*; do echo -n "$each "; done; }


# --------------------------------------------------------------------
# All commands

allcoms_with_aliases () {
    # HOOK: (occur " or:" -1)
    for each in $(allcoms_according_to_help); do
        fossil help $each | grep -E "^ *(Usage:|or:)"
    done; }

allcoms_according_to_help () {
    for each in $(fossil help -a); do echo $each; done | sort; }

Added src/TAGS.

more than 10,000 changes

Added www/index.md.










1
2
3
4
5
6
7
8
9
+
+
+
+
+
+
+
+
+
This is a personal clone of the canonical Fossil repository found at:

   [](https://fossil-scm.org)

You should almost certainly go there.

|:   Branch |:   Timeline               |:   Files              |

|:   sebyte |:   [](/timeline?r=sebyte) |:   [](/dir?ci=sebyte) |