130 * bookmark: add methods to binary encode and decode bookmark values |
130 * bookmark: add methods to binary encode and decode bookmark values |
131 * bookmark: deprecate direct update of a bookmark value |
131 * bookmark: deprecate direct update of a bookmark value |
132 * bookmark: introduce a 'bookmarks' part |
132 * bookmark: introduce a 'bookmarks' part |
133 * bookmark: introduce in advance a variant of the exchange test |
133 * bookmark: introduce in advance a variant of the exchange test |
134 * bookmark: run 'pushkey' hooks after bookmark move, not 'prepushkey' |
134 * bookmark: run 'pushkey' hooks after bookmark move, not 'prepushkey' |
|
135 * bookmark: use the 'bookmarks' bundle2 part to push bookmark update (Bts:issue5165) |
135 * bookmarks: add bookmarks to hidden revs if directaccess config is set |
136 * bookmarks: add bookmarks to hidden revs if directaccess config is set |
136 * bookmarks: calculate visibility exceptions only once |
137 * bookmarks: calculate visibility exceptions only once |
137 * bookmarks: display the obsfate of hidden revision we create a bookmark on |
138 * bookmarks: display the obsfate of hidden revision we create a bookmark on |
138 * bookmarks: fix pushkey compatibility mode (Bts:issue5777) |
139 * bookmarks: fix pushkey compatibility mode (Bts:issue5777) |
139 * bookmarks: use context managers for lock and transaction in update() |
140 * bookmarks: use context managers for lock and transaction in update() |
140 * bookmarks: use context managers for locks and transaction in pushbookmark() |
141 * bookmarks: use context managers for locks and transaction in pushbookmark() |
|
142 * branch: add a --rev flag to change branch name of given revisions |
141 * branch: allow changing branch name to existing name if possible |
143 * branch: allow changing branch name to existing name if possible |
142 * clone: add support for storing remotenames while cloning |
144 * clone: add support for storing remotenames while cloning |
143 * clone: use utility function to write hgrc |
145 * clone: use utility function to write hgrc |
144 * clonebundle: make it possible to retrieve the initial bundle through largefile |
146 * clonebundle: make it possible to retrieve the initial bundle through largefile |
|
147 * commands: use the new API to access hidden changesets in various commands |
145 * commandserver: restore cwd in case of exception |
148 * commandserver: restore cwd in case of exception |
146 * commandserver: unblock SIGCHLD |
149 * commandserver: unblock SIGCHLD |
|
150 * fileset: do not crash by unary negate operation |
147 * help: deprecate ui.slash in favor of slashpath template filter (Bts:issue5572) |
151 * help: deprecate ui.slash in favor of slashpath template filter (Bts:issue5572) |
148 * log: allow matchfn to be non-null even if both --patch/--stat are off |
152 * log: allow matchfn to be non-null even if both --patch/--stat are off |
149 * log: build follow-log filematcher at once |
153 * log: build follow-log filematcher at once |
150 * log: don't expand aliases in revset built from command options |
154 * log: don't expand aliases in revset built from command options |
|
155 * log: follow file history across copies even with -rREV (BC) (Bts:issue4959) |
151 * log: make "slowpath" condition slightly more readable |
156 * log: make "slowpath" condition slightly more readable |
152 * log: make opt2revset table a module constant |
157 * log: make opt2revset table a module constant |
153 * log: merge getlogrevs() and getgraphlogrevs() |
158 * log: merge getlogrevs() and getgraphlogrevs() |
154 * log: remove temporary variable 'date' used only once |
159 * log: remove temporary variable 'date' used only once |
155 * log: resolve --follow thoroughly in getlogrevs() |
160 * log: resolve --follow thoroughly in getlogrevs() |
156 * log: resolve --follow with -rREV in cmdutil.getlogrevs() |
161 * log: resolve --follow with -rREV in cmdutil.getlogrevs() |
|
162 * log: rewrite --follow-first -rREV like --follow for consistency (BC) |
157 * log: simplify 'x or ancestors(x)' expression |
163 * log: simplify 'x or ancestors(x)' expression |
158 * log: translate column labels at once (Bts:issue5750) |
164 * log: translate column labels at once (Bts:issue5750) |
159 * log: use revsetlang.formatspec() thoroughly |
165 * log: use revsetlang.formatspec() thoroughly |
160 * log: use revsetlang.formatspec() to concatenate list expression |
166 * log: use revsetlang.formatspec() to concatenate list expression |
161 * log: use smartset.slice() to limit number of revisions to be displayed |
167 * log: use smartset.slice() to limit number of revisions to be displayed |
170 * pull: hold wlock for the full operation when --update is used |
176 * pull: hold wlock for the full operation when --update is used |
171 * pull: retrieve bookmarks through the binary part when possible |
177 * pull: retrieve bookmarks through the binary part when possible |
172 * pull: store binary node in pullop.remotebookmarks |
178 * pull: store binary node in pullop.remotebookmarks |
173 * push: include a 'check:bookmarks' part when possible |
179 * push: include a 'check:bookmarks' part when possible |
174 * push: restrict common discovery to the pushed set |
180 * push: restrict common discovery to the pushed set |
|
181 * revert: do not reverse hunks in interactive when REV is not parent (Bts:issue5096) |
175 * revert: support reverting to hidden cset if directaccess config is set |
182 * revert: support reverting to hidden cset if directaccess config is set |
176 |
183 |
177 === core === |
184 === core === |
|
185 * color: respect HGPLAINEXCEPT=color to allow colors while scripting (Bts:issue5749) |
|
186 * dirstate: add explicit methods for querying directories (API) |
|
187 * dispatch: abort if early boolean options can't be parsed |
|
188 * dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options |
|
189 * dispatch: add option to not strip command args parsed by _earlygetopt() |
|
190 * dispatch: alias --repo to --repository while parsing early options |
|
191 * dispatch: fix early parsing of short option with value like -R=foo |
|
192 * dispatch: handle IOError when writing to stderr |
|
193 * dispatch: stop parsing of early boolean option at "--" |
|
194 * dispatch: verify result of early command parsing |
|
195 * exchange: return bundle info from getbundlechunks() (API) |
178 * filelog: add the ability to report the user facing name |
196 * filelog: add the ability to report the user facing name |
|
197 * localrepo: specify optional callback parameter to pathauditor as a keyword |
179 * revlog: choose between ifh and dfh once for all |
198 * revlog: choose between ifh and dfh once for all |
180 * revlog: don't use slicing to return parents |
199 * revlog: don't use slicing to return parents |
181 * revlog: group delta computation methods under _deltacomputer object |
200 * revlog: group delta computation methods under _deltacomputer object |
182 * revlog: group revision info into a dedicated structure |
201 * revlog: group revision info into a dedicated structure |
183 * revlog: introduce 'deltainfo' to distinguish from 'delta' |
202 * revlog: introduce 'deltainfo' to distinguish from 'delta' |
184 * revlog: rename 'rev' to 'base', as it is the base revision |
203 * revlog: rename 'rev' to 'base', as it is the base revision |
185 * revlog: separate diff computation from the collection of other info |
204 * revlog: separate diff computation from the collection of other info |
186 * revset: evaluate filesets against each revision for 'file()' (Bts:issue5778) |
205 * revset: evaluate filesets against each revision for 'file()' (Bts:issue5778) |
187 * revset: parse x^:: as (x^):: (Bts:issue5764) |
206 * revset: parse x^:: as (x^):: (Bts:issue5764) |
|
207 * streamclone: add support for bundle2 based stream clone |
|
208 * streamclone: add support for cloning non append-only file |
|
209 * streamclone: also stream caches to the client |
|
210 * streamclone: define first iteration of version 2 of stream format |
|
211 * streamclone: move wire protocol status code from wireproto command |
|
212 * streamclone: rework canperformstreamclone |
|
213 * streamclone: tests phase exchange during stream clone |
|
214 * streamclone: use readexactly when reading stream v2 |
|
215 * templater: fix crash by empty group expression |
|
216 * templater: keep default resources per template engine (API) |
188 * templater: look up symbols/resources as if they were separated (Bts:issue5699) |
217 * templater: look up symbols/resources as if they were separated (Bts:issue5699) |
189 * transaction: register summary callbacks only at start of transaction (BC) |
218 * transaction: register summary callbacks only at start of transaction (BC) |
190 * util: whitelist NTFS for hardlink creation (Bts:issue4580) |
219 * util: whitelist NTFS for hardlink creation (Bts:issue4580) |
|
220 * vfs: drop text mode flag (API) |
|
221 * wireproto: drop support for reader interface from streamres (API) |
191 |
222 |
192 === extensions === |
223 === extensions === |
193 * convert: restore the ability to use bzr < 2.6.0 (Bts:issue5733) |
224 * convert: restore the ability to use bzr < 2.6.0 (Bts:issue5733) |
194 * histedit: add support to output nodechanges using formatter |
225 * histedit: add support to output nodechanges using formatter |
195 * largefiles: add a 'debuglfput' command to put largefile into the store |
226 * largefiles: add a 'debuglfput' command to put largefile into the store |
196 * largefiles: add support for 'largefiles://' url scheme |
227 * largefiles: add support for 'largefiles://' url scheme |
197 * largefiles: allow to run 'debugupgraderepo' on repo with largefiles |
228 * largefiles: allow to run 'debugupgraderepo' on repo with largefiles |
198 * largefiles: convert EOL of hgrc before appending to bytes IO |
|
199 * largefiles: explicitly set the source and sink types to 'hg' for lfconvert |
229 * largefiles: explicitly set the source and sink types to 'hg' for lfconvert |
200 * largefiles: modernize how capabilities are added to the wire protocol |
230 * largefiles: modernize how capabilities are added to the wire protocol |
201 * largefiles: pay attention to dropped standin files when updating largefiles |
231 * largefiles: pay attention to dropped standin files when updating largefiles |
202 * rebase: add concludememorynode(), and call it when rebasing in-memory |
232 * rebase: add concludememorynode(), and call it when rebasing in-memory |
203 * rebase: add the --inmemory option flag; assign a wctx object for the rebase |
233 * rebase: add the --inmemory option flag; assign a wctx object for the rebase |
222 * hgweb: stop adding strings to innerHTML of #graphnodes and #nodebgs (BC) |
254 * hgweb: stop adding strings to innerHTML of #graphnodes and #nodebgs (BC) |
223 |
255 |
224 === unsorted === |
256 === unsorted === |
225 * archive: add support to specify hidden revs if directaccess config is set |
257 * archive: add support to specify hidden revs if directaccess config is set |
226 * atomicupdate: add an experimental option to use atomictemp when updating |
258 * atomicupdate: add an experimental option to use atomictemp when updating |
|
259 * bundle2: don't use seekable bundle2 parts by default (Bts:issue5691) |
227 * bundle: allow bundlerepo to support alternative manifest implementations |
260 * bundle: allow bundlerepo to support alternative manifest implementations |
228 * changelog: introduce a 'tiprev' method |
261 * changelog: introduce a 'tiprev' method |
229 * changelog: use 'tiprev()' in 'tip()' |
262 * changelog: use 'tiprev()' in 'tip()' |
230 * completion: add support for new "amend" command |
263 * completion: add support for new "amend" command |
|
264 * crecord: fix revert -ir '.^' crash caused by 3649c3f2cd |
231 * debugssl: convert port number to int (Bts:issue5757) |
265 * debugssl: convert port number to int (Bts:issue5757) |
232 * diff: disable diff.noprefix option for diffstat (Bts:issue5759) |
266 * diff: disable diff.noprefix option for diffstat (Bts:issue5759) |
233 * dispatch: abort if early boolean options can't be parsed |
|
234 * dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options |
|
235 * dispatch: add option to not strip command args parsed by _earlygetopt() |
|
236 * dispatch: alias --repo to --repository while parsing early options |
|
237 * dispatch: convert non-list option parsed by _earlygetopt() to string |
|
238 * dispatch: fix early parsing of short option with value like -R=foo |
|
239 * dispatch: handle IOError when writing to stderr |
|
240 * dispatch: stop parsing of early boolean option at "--" |
|
241 * dispatch: verify result of early command parsing |
|
242 * evolution: make reporting of new unstable changesets optional |
267 * evolution: make reporting of new unstable changesets optional |
243 * extdata: abort if external command exits with non-zero status (BC) |
268 * extdata: abort if external command exits with non-zero status (BC) |
244 * fancyopts: add early-options parser compatible with getopt() |
269 * fancyopts: add early-options parser compatible with getopt() |
245 * graphlog: add another graph node type, unstable, using character "*" (BC) |
270 * graphlog: add another graph node type, unstable, using character "*" (BC) |
246 * hgdemandimport: use correct hyperlink to python-bug in comments (Bts:issue5765) |
271 * hgdemandimport: use correct hyperlink to python-bug in comments (Bts:issue5765) |
247 * httppeer: add support for tracing all http request made by the peer |
272 * httppeer: add support for tracing all http request made by the peer |
248 * identify: document -r. explicitly how to disable wdir scanning (Bts:issue5622) |
273 * identify: document -r. explicitly how to disable wdir scanning (Bts:issue5622) |
249 * lfs: register config options |
274 * lfs: register config options |
250 * localrepo: specify optional callback parameter to pathauditor as a keyword |
|
251 * match: do not weirdly include explicit files excluded by -X option |
275 * match: do not weirdly include explicit files excluded by -X option |
252 * memfilectx: make changectx argument mandatory in constructor (API) |
276 * memfilectx: make changectx argument mandatory in constructor (API) |
253 * morestatus: don't crash with different drive letters for repo.root and CWD |
277 * morestatus: don't crash with different drive letters for repo.root and CWD |
254 * outgoing: respect ":pushurl" paths (Bts:issue5365) |
278 * outgoing: respect ":pushurl" paths (Bts:issue5365) |
255 * remove: print message for each file in verbose mode only while using '-A' (BC) |
279 * remove: print message for each file in verbose mode only while using '-A' (BC) |
256 * rewriteutil: use precheck() in uncommit and amend commands |
280 * rewriteutil: use precheck() in uncommit and amend commands |
257 * scmutil: don't try to delete origbackup symlinks to directories (Bts:issue5731) |
281 * scmutil: don't try to delete origbackup symlinks to directories (Bts:issue5731) |
258 * sshpeer: add support for request tracing |
282 * sshpeer: add support for request tracing |
259 * streamclone: add support for bundle2 based stream clone |
|
260 * streamclone: add support for cloning non append-only file |
|
261 * streamclone: also stream caches to the client |
|
262 * streamclone: define first iteration of version 2 of stream format |
|
263 * streamclone: move wire protocol status code from wireproto command |
|
264 * streamclone: rework canperformstreamclone |
|
265 * streamclone: tests phase exchange during stream clone |
|
266 * streamclone: use readexactly when reading stream v2 |
|
267 * subrepo: add config option to reject any subrepo operations (SEC) |
283 * subrepo: add config option to reject any subrepo operations (SEC) |
268 * subrepo: disable git and svn subrepos by default (BC) (SEC) |
284 * subrepo: disable git and svn subrepos by default (BC) (SEC) |
269 * subrepo: extend config option to disable subrepos by type (SEC) |
285 * subrepo: extend config option to disable subrepos by type (SEC) |
270 * subrepo: handle 'C:' style paths on the command line (Bts:issue5770) |
286 * subrepo: handle 'C:' style paths on the command line (Bts:issue5770) |
271 * subrepo: use per-type config options to enable subrepos |
287 * subrepo: use per-type config options to enable subrepos |
272 * svnsubrepo: check if subrepo is missing when checking dirty state (Bts:issue5657) |
288 * svnsubrepo: check if subrepo is missing when checking dirty state (Bts:issue5657) |
|
289 * test-bookmarks-pushpull: stabilize for Windows |
|
290 * test-run-tests: stabilize the test (Bts:issue5735) |
273 * tr-summary: keep a weakref to the unfiltered repository |
291 * tr-summary: keep a weakref to the unfiltered repository |
274 * unamend: fix command summary line |
292 * unamend: fix command summary line |
275 * uncommit: unify functions _uncommitdirstate and _unamenddirstate to one |
293 * uncommit: unify functions _uncommitdirstate and _unamenddirstate to one |
|
294 * update: fix crash on bare update when directaccess is enabled |
276 * update: support updating to hidden cset if directaccess config is set |
295 * update: support updating to hidden cset if directaccess config is set |
277 |
296 |
278 === BC === |
297 === Behavior Changes === |
279 |
298 |
280 * extdata: abort if external command exits with non-zero status (BC) |
299 * extdata: abort if external command exits with non-zero status (BC) |
281 * graphlog: add another graph node type, unstable, using character "*" (BC) |
300 * graphlog: add another graph node type, unstable, using character "*" (BC) |
282 * hgweb: drop support of browsers that don't understand <canvas> (BC) |
301 * hgweb: drop support of browsers that don't understand <canvas> (BC) |
283 * hgweb: only include graph-related data in jsdata variable on /graph pages (BC) |
302 * hgweb: only include graph-related data in jsdata variable on /graph pages (BC) |
284 * hgweb: stop adding strings to innerHTML of #graphnodes and #nodebgs (BC) |
303 * hgweb: stop adding strings to innerHTML of #graphnodes and #nodebgs (BC) |
|
304 * log: follow file history across copies even with -rREV (BC) (Bts:issue4959) |
|
305 * log: rewrite --follow-first -rREV like --follow for consistency (BC) |
285 * remove: print message for each file in verbose mode only while using '-A' (BC) |
306 * remove: print message for each file in verbose mode only while using '-A' (BC) |
286 * subrepo: disable git and svn subrepos by default (BC) (SEC) |
307 * subrepo: disable git and svn subrepos by default (BC) (SEC) |
287 * transaction: register summary callbacks only at start of transaction (BC) |
308 * transaction: register summary callbacks only at start of transaction (BC) |
288 |
309 |
289 === API Changes === |
310 === Internal API Changes === |
290 |
311 |
|
312 * dirstate: add explicit methods for querying directories (API) |
|
313 * exchange: return bundle info from getbundlechunks() (API) |
291 * memfilectx: make changectx argument mandatory in constructor (API) |
314 * memfilectx: make changectx argument mandatory in constructor (API) |
|
315 * templater: keep default resources per template engine (API) |
|
316 * vfs: drop text mode flag (API) |
|
317 * wireproto: drop support for reader interface from streamres (API) |