A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/python/peps/commit/b3f4c8eb09d1987d00785cad385adf7e0394776e below:

add python-dev feedback and expand the "migration considerat… · python/peps@b3f4c8e · GitHub

@@ -137,6 +137,17 @@ by improving Roundup and/or our instance.

137 137

A mobile-friendly theme that is more modern but still familiar

138 138

will be added.

139 139 140 +

* **Move reply box close to the last message.** The reply box is

141 +

located at the top of the page, whereas the last message is at the

142 +

bottom.

143 + 144 +

The reply box can be moved or duplicated after the last message.

145 + 146 +

* **Real-time updates.** When another users submits changes to an

147 +

issue, they should show up in real time.

148 + 149 +

This can be accomplished by using the REST API.

150 + 140 151

* **Add PR link to BPO emails.** Currently bpo emails don't include

141 152

links to the corresponding PRs.

142 153

@@ -277,78 +288,135 @@ have been addressed by :pep:`581` and :pep:`588`.

277 288 278 289

:pep:`588` suggests to add a button to migrate issues to GitHub

279 290

only when someone wants to keep working on them. This approach

280 -

has several issues:

281 - 282 -

* bpo will need to be updated in order to add a button that,

283 -

once pressed, creates a new issue on GitHub, copies over all

284 -

the messages, attachments, and creates/adds label for the

285 -

existing fields. Permissions will also need to be tweaked

286 -

to make individual issues read-only once they are migrated,

287 -

and to prevent users to create new accounts.

288 - 289 -

* The issues will be split between two trackers; searching issues

290 -

will take significant more effort.

291 - 292 -

* The conversion from Roundup to GitHub is lossy, unless all

293 -

the bpo fields are converted into labels or preserved somewhere

294 -

else.

295 - 296 -

* bpo converts a number of references into links, including

297 -

issue, message, and PR IDs, changeset numbers, legacy SVN

298 -

revision numbers, paths to files in the repo, files in

299 -

tracebacks (detecting the correct branch), links to devguide

300 -

pages and sections [#]_. This happens when messages are

301 -

requested so it is possible to create the correct link (e.g.

302 -

all the file links used to point to hg.python.org and now

303 -

point to GitHub).

304 - 305 -

If the links are hardcoded during the migration, it will be

306 -

difficult (if not impossible) to change them later. If they

307 -

aren't, they will either be lost, or a tool to generate the

308 -

links and updating them will need to be written.

309 - 310 -

* GitHub doesn't provide a way to set and preserve issue IDs

311 -

if they are migrated automatically with the use of a button.

312 -

(Some projects managed to preserve the IDs by contaacting

313 -

the GitHub staff and migrating the issues *en masse*.)

314 - 315 -

* On top of the work and changes required to migrate to GitHub

316 -

issues, we will still need to keep running and maintaining

317 -

Roundup, for both our instance (read-only) and for the Jython

291 +

has several issues, but there are also other issues that will

292 +

need to be addressed regardless of the approach used:

293 + 294 +

* **Vendor lock-in.** GitHub is properietary and there is risk

295 +

of vendor lock-in. Their business model might change and they

296 +

could shut down altogether. For example, several projects

297 +

decided to move away from GitHub after Microsoft acquisition.

298 + 299 +

If/when the repository is no longer available on GitHub, we will

300 +

be forced to migrate again and all the links to the issues won't

301 +

work anymore.

302 + 303 +

* **Required bpo updates.** bpo will need to be updated in order

304 +

to add a button that, once pressed, creates a new issue on

305 +

GitHub, copies over all the messages, attachments, and

306 +

creates/adds labels for the existing fields. Permissions will

307 +

also need to be tweaked to make individual issues read-only

308 +

once they are migrated, and to prevent users to create new

309 +

accounts. It might be necessary to set up redirects (see below).

310 + 311 +

* **Two trackers.** If issues are migrated on demand, the issues

312 +

will be split between two trackers. Referencing and searching

313 +

issues will take significant more effort.

314 + 315 +

* **Lossy conversion.** GitHub only mechanism to add custom metadata

316 +

is through labels. bpo uses a number of fields to specify several

317 +

different metadata. Preserving all fields and values will result

318 +

in too many labels. If only some fields and values are preserved

319 +

the others will be lost (unless there is a way to preserve them

320 +

elsewhere).

321 + 322 +

* **Issue IDs preservation.** GitHub doesn't provide a way to

323 +

set and preserve the ID of migrated issues. Some projects managed

324 +

to preserve the IDs by contacting the GitHub staff and migrating

325 +

the issues *en masse*. However, this is no longer possible, since

326 +

PRs and issues share the same namespace and PRs already use

327 +

existing bpo issue IDs.

328 + 329 +

* **Internal issue links preservation.** Existing issues might

330 +

contain references to other issues in messages and fields (e.g.

331 +

dependencies or superseder). Since the issue ID will change

332 +

during the migration, these will need to be updated. If the

333 +

issues are migrated on demand, all the existing internal

334 +

references to the migrated issues (on both bpo and GitHub issues)

335 +

will have to be updated.

336 + 337 +

Setting up a redirect for each migrated issue on bpo might

338 +

mitigate the issue, however -- if references in migrated messages

339 +

are not updated -- it will cause confusion (e.g. if bpo issue

340 +

`#1234` becomes GitHub issue `#4321`, a reference to `#1234`

341 +

in a migrated message could link to bpo `#1234` and bpo can

342 +

redirect to GitHub issue `#4321`, but new references to `#1234`

343 +

will link to GitHub PR `#1234` rather than GitHub issue `#4321`).

344 +

Manually having to specify a `bpo-` or `gh-` prefix is error prone.

345 + 346 +

* **External issue links preservation.** A number of websites,

347 +

mails, etc. link to bpo issues. If bpo is shut down, these links

348 +

will break. If we don't want to break the links, we will have to

349 +

keep bpo alive and set up a redirect system that links to the

350 +

corresponding GitHub issue.

351 + 352 +

In addition, if GitHub shuts down, we won't have any way to setup

353 +

redirects and preserve external links to GitHub issues.

354 + 355 +

* **References preservation and updating.** In addition to issue

356 +

references, bpo converts a number of other references into links,

357 +

including message and PR IDs, changeset numbers, legacy SVN

358 +

revision numbers, paths to files in the repo, files in tracebacks

359 +

(detecting the correct branch), and links to devguide pages and

360 +

sections [#]_.

361 + 362 +

Since Roundup converts references to links when messages are

363 +

requested, it is possible to update the target and generate the

364 +

correct link. This need already arised several times, for

365 +

example: files and HG changesets moved from `hg.python.org` to

366 +

GitHub and the devguide moved from `docs.python.org/devguide` to

367 +

`devguide.python.org`.

368 + 369 +

Since messages on GitHub are static, the links will need to be

370 +

generated and hardcoded during the migration or they will be lost.

371 +

In order to update them, a tool to find all references and

372 +

regenerate the links will need to be written.

373 + 374 +

* **Roundup and bpo maintenance.** On top of the aforementioned

375 +

changes to bpo and development of tools required to migrate to

376 +

GitHub issues, we will still need to keep running and maintaining

377 +

Roundup, both for our bpo instance (read-only) and for the Jython

318 378

and Roundup trackers (read-write).

319 379 380 +

Even if eventually we migrate all bpo issues to GitHub and we stop

381 +

maintaining Jython and Roundup, bpo will need to be maintained

382 +

and redirect to the corresponding GitHub issues.

320 383 321 -

In addition to the issues listed in the "Open issues" section of

322 -

:pep:`588`, this issues will need to be addressed:

384 +

* **Bots maintenance.** Since it's not possible to customize GitHub

385 +

directly, it's also necessary to write, maintain, and host bots.

386 +

Even if eventually we stop maintaining Roundup, the maintenance

387 +

burden simply shifted from Roundup to the bots. Hosting each

388 +

different bot also has a monetary cost.

323 389 324 -

* GitHub is properietary and there is risk of vendor lock-in.

325 -

Their business model might change and they could shut down

326 -

altogether.

390 +

* **Using issue templates.** Manually editing issue templates to

391 +

"remove texts that don't apply to [the] issue" is cumbersome and

392 +

error-prone.

327 393 328 -

* Switching to GitHub Issues will likely increase the number of

329 -

invalid reports and increase the triaging effort. This concern

330 -

has been raised in the past in a Zulip topic [#]_.

394 +

* **Signal to noise ratio.** Switching to GitHub Issues will

395 +

likely increase the number of invalid reports and increase

396 +

the triaging effort. This concern has been raised in the past

397 +

in a Zulip topic [#]_.

331 398 332 399

There have been already cases where people posted comments on

333 400

PRs that required moderators to mark them as off-topic or

334 401

disruptive, delete them altogether, and even lock the

335 402

conversation [#]_.

336 403 337 -

* Roundup sends weekly reports to python-dev with a summary that

338 -

includes new issues, recent issues with no replies, recent

339 -

issues waiting for review, most discussed issues, closed issues,

340 -

and deltas for open/closed/total issue counts [#]_. The report

341 -

provides an easy way to keep track of the tracker activity and

342 -

to make sure that issues that require attention are noticed.

404 +

* **Weekly tracker reports and stats.** Roundup sends weekly reports

405 +

to python-dev with a summary that includes new issues, recent

406 +

issues with no replies, recent issues waiting for review, most

407 +

discussed issues, closed issues, and deltas for open/closed/total

408 +

issue counts [#]_. The report provides an easy way to keep track

409 +

of the tracker activity and to make sure that issues that require

410 +

attention are noticed.

343 411 344 412

The data collect by the weekly report is also use to generate

345 413

statistics and graphs that can be used to gain new insights [#]_.

346 414 347 -

* There are currently two mailing lists where Roundup posts new

348 -

tracker issues and all messages respectively: new-bugs-announce

349 -

[#]_ and python-bugs-list [#]_. A new system will need to be

350 -

developed to preserve this functionality. These MLs offer

351 -

additional ways to keep track of the tracker activity.

415 +

* **bpo-related MLs.** There are currently two mailing lists where

416 +

bpo posts new tracker issues and all messages respectively:

417 +

`new-bugs-announce` [#]_ and `python-bugs-list` [#]_. A new system

418 +

will need to be developed to preserve this functionality. These MLs

419 +

offer additional ways to keep track of the tracker activity.

352 420 353 421 354 422

References


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4