Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

P2093 Formatted output #884

Open
wg21bot opened this issue Jun 17, 2020 · 28 comments · May be fixed by cplusplus/draft#5693
Open

P2093 Formatted output #884

wg21bot opened this issue Jun 17, 2020 · 28 comments · May be fixed by cplusplus/draft#5693
Labels
B3 - Addition C++23 IS LWG plenary-approved tentatively-ready-for-plenary
Milestone

Comments

@wg21bot
Copy link
Collaborator

@wg21bot wg21bot commented Jun 17, 2020

P2093R0 Formatted output (Victor Zverovich)

@wg21bot wg21bot added LEWG SG16 labels Jun 17, 2020
@wg21bot wg21bot added this to the 2020-telecon milestone Jun 17, 2020
@wg21bot
Copy link
Collaborator Author

@wg21bot wg21bot commented Aug 1, 2020

P2093R1 Formatted output (Victor Zverovich)

@brycelelbach brycelelbach added B3 - Addition IS ready-for-library-evolution-meeting-review labels Aug 25, 2020
@brycelelbach
Copy link
Collaborator

@brycelelbach brycelelbach commented Oct 20, 2020

2020-09-29 Library Evolution Telecon Minutes

Chair: Fabio Fracassi

Champion: Victor Zverovich

Minute Taker: Ben Craig

POLL: We prefer std::cout as the default output target.

SF WF N WA SA
3 2 6 6 5

POLL: Add a member function on ostream instead of a std::print(ostream&, ...) free function overload

SF WF N WA SA
0 2 5 17 3

Author's Position: WF

Attendance: 35

Outcome: Consensus against.

POLL: Remove std::println from the paper

SF WF N WA SA
1 10 7 4 4

Outcome: No strong consensus for change.

Author's Position: N

Attendance: 35

@wg21bot
Copy link
Collaborator Author

@wg21bot wg21bot commented Oct 27, 2020

P2093R2 Formatted output (Victor Zverovich)

@jensmaurer jensmaurer modified the milestones: 2020-telecon, 2021-telecon Dec 28, 2020
@wg21bot
Copy link
Collaborator Author

@wg21bot wg21bot commented Jan 22, 2021

P2093R3 Formatted output (Victor Zverovich)

@brycelelbach
Copy link
Collaborator

@brycelelbach brycelelbach commented Jan 23, 2021

Polls

Poll: We want P2093r2 to revert moving the print(ostream) overloads to the header.

Strongly Favor Weakly Favor Neutral Weakly Against Strongly Against
0 0 6 6 1

Attendance: 17

# of Authors: 1

Author Position: WA

Outcome: Keep the paper as written.

Summary

This was only a short discussion at the end of a session. As before we like the direction of the paper. No new issues came up and we affirmed the design decission of the author to put the ostream related overloads into the ostream header.

Outcome

No changes to the paper. Discussion on this paper will continue.

@brycelelbach brycelelbach added scheduled-for-library-evolution and removed LEWG ready-for-library-evolution-meeting-review scheduled-for-library-evolution labels Jan 27, 2021
@wg21bot
Copy link
Collaborator Author

@wg21bot wg21bot commented Feb 22, 2021

P2093R4 Formatted output (Victor Zverovich)

@tahonermann
Copy link
Collaborator

@tahonermann tahonermann commented Feb 22, 2021

SG16 reviewed P2093R2 in our 2020-12-09 telecon and P2093R3 in our 2021-02-10 telecon. R3 implemented the feedback provided during the review of R2.

The following poll was conducted:

Forward P2093R3 to LEWG.

SF F N A SA
4 2 2 0 1

Consensus? Yes

Sustained opposition exists regarding progressing this paper without exposing low level interfaces to 1) detect whether output is directed to a console/terminal, 2) write directly to a console/terminal. The author has agreed to propose such facilities in a separate paper.

Concerns regarding encoding and how support for additional character types can be incorporated remain, but these concerns were not deemed sufficient to preclude progress on this paper. Participants with such concerns are encouraged to follow up in a separate paper.

Removing the SG16 label.

@tahonermann tahonermann removed the SG16 label Feb 22, 2021
@vitaut
Copy link

@vitaut vitaut commented Feb 27, 2021

@tahonermann, there is some unrelated text in the poll statement above ("D1885R2: We want to support non-IANA registered encodings provided by the implementation").

@tahonermann
Copy link
Collaborator

@tahonermann tahonermann commented Feb 27, 2021

there is some unrelated text in the poll statement above

Oops, thank you @vitaut, fixed!

@tahonermann
Copy link
Collaborator

@tahonermann tahonermann commented Mar 10, 2021

@brycelelbach, I think LEWG related tags may not be correctly set for this paper. I suspect this should have the "ready-for-library-evolution-meeting-review" tag.

@jensmaurer jensmaurer added the LEWG label Mar 11, 2021
@brycelelbach brycelelbach added the ready-for-library-evolution-meeting-review label Mar 13, 2021
@brycelelbach brycelelbach added the scheduled-for-library-evolution label Mar 25, 2021
@wg21bot
Copy link
Collaborator Author

@wg21bot wg21bot commented Mar 25, 2021

P2093R5 Formatted output (Victor Zverovich)

@FabioFracassi
Copy link
Collaborator

@FabioFracassi FabioFracassi commented Apr 16, 2021

2021-04-06 Library Evolution Telecon

P2093R5: Formatted output

2021-04-06 Library Evolution Telecon Minutes

Poll: Block P2093 until we have a proposal for a lower level facility that can query tty/console and preform direct output to the console

Strongly Favor Weakly Favor Neutral Weakly Against Strongly Against
2 1 5 5 6

Attendance: 26

# of Authors: 1

Author Position: SA

Outcome: Consensus Against

POLL: We want std::print et al. non ostream overloads to go to:

Header Approve Disapprove
<ostream> 3 7
<io> 6 5
<print> 10 3
<format> 12 1
<utility> 1 13

Attendance: 24

# of Authors: 1

Author Position: Against both of the favored options.

Outcome: Both <print> and <format> have consensus, author can choose on for the next revision.

Summary

We discussed several questions that were posed to us by SG16 (Unicode). We were able to make progress on several technical questions. The discussion about transcoding requirements and consequences however needs more information to progress.

Outcome

We decided not to block the paper to wait for a lower level facility to interact with consoles/terminals. We discussed naming and header placement as guidance. The paper has been sent back to SG16 (Unicode) for clarification. The issues that need to be decided for this Paper are in SG16's expert domain. Library Evolution needs more information about the design space.

@FabioFracassi FabioFracassi added SG16 and removed LEWG labels Apr 16, 2021
@brycelelbach brycelelbach added ready-for-library-evolution-meeting-review scheduled-for-library-evolution labels Sep 15, 2021
@wg21bot
Copy link
Collaborator Author

@wg21bot wg21bot commented Sep 20, 2021

P2093R9 Formatted output (Victor Zverovich)

@peter-b
Copy link
Collaborator

@peter-b peter-b commented Sep 20, 2021

We revisited P2093R8 during our SG16 call on September 8th, 2021. We took the following polls during our discussion:

  • Poll: Use of UTF-8 as the literal encoding is sufficient for facilities to establish encoding expectations.

    • Attendance: 9

      SF F N A SA
      2 3 2 1 0
    • Consensus in favour.

  • Poll: Correct the P2093R8 wording for [print.syn].31 to remove ambiguities, and forward P2093 as revised to LEWG with a recommended ship vehicle of C++23.

    • Attendance: 9

      SF F N A SA
      1 4 2 0 0
    • Consensus in favor.

Removing SG16 label.

@peter-b peter-b removed the SG16 label Sep 20, 2021
@wg21bot
Copy link
Collaborator Author

@wg21bot wg21bot commented Nov 26, 2021

P2093R10 Formatted output (Victor Zverovich)

@brycelelbach brycelelbach added ready-for-library-evolution-electronic-poll and removed ready-for-library-evolution-meeting-review scheduled-for-library-evolution labels Nov 29, 2021
@brycelelbach
Copy link
Collaborator

@brycelelbach brycelelbach commented Nov 29, 2021

2021-11-29 Library Evolution Telecon

P2093R10: Formatted Output

2021-11-29 Library Evolution Telecon Minutes

Chair: Bryce Adelstein Lelbach

Champion: Victor Zverovich

Minute Taker: Ben Craig

Start: 2021-11-29 11:09 Pacific

Does this proposal have:

  • Examples?
    • Yes.
  • Implementation experience?
    • Partially. We have experience in fmt, but not in a C++ Standard Library or reference implementation written from the spec.
    • No field experience in fmt with the mojibake prevention.
  • Usage experience?
    • Partially. We have experience in fmt, but not in a C++ Standard Library or reference implementation written from the spec.
    • No field experience in fmt with the mojibake prevention.
  • Deployment experience?
    • Partially. We have experience in fmt, but not in a C++ Standard Library or reference implementation written from the spec.
    • No field experience in fmt with the mojibake prevention.
  • Performance considerations?
    • Yes.
  • Discussion of prior art?
    • Yes (fmt, Python's print).
  • Changes Library Evolution previously requested?
    • Yes.
  • Wording?
    • Yes.
  • Feature test macro?
    • Yes.

Open Questions:

  • Should vprint_unicode always require Unicode?

POLL: Modify P2093R10 (Formatted Output) by updating the wording of the vprint_unicode stream overload to match the vprint_unicode FILE* overload and not reference basic_filebuf specifically, and send the revised paper to LWG for C++23 with priority B3 (to be confirmed with a Library Evolution electronic poll).

Strongly Favor Weakly Favor Neutral Weakly Against Strongly Against
10 4 0 0 0

Attendance: 21

# of Authors: 1

Author Position: SF

Outcome: Strong consensus in favor.

End: 11:55

Summary

We discussed P2098 (formatted output), which we've seen a few times in the past. The paper has been iterating in the Text and Unicode study group, which recently approved it and sent it back to Library Evolution.

There have not been many significant revisions to the library API since the last time Library Evolution reviewed it. We did identify some mismatches between design intent and wording during our review, but these were all minor matters with a clear resolution.

Outcome

Modify P2093R10 (Formatted Output) by updating the wording of the vprint_unicode stream overload to match the vprint_unicode FILE* overload and not reference basic_filebuf specifically, and send the revised paper to LWG for C++23 with priority B3 (to be confirmed with a Library Evolution electronic poll).

@brycelelbach brycelelbach added the scheduled-for-library-evolution label Dec 6, 2021
@cor3ntin cor3ntin removed the scheduled-for-library-evolution label Dec 7, 2021
@cplusplus cplusplus deleted a comment Dec 13, 2021
@JeffGarland JeffGarland added the LWG label Dec 13, 2021
@wg21bot
Copy link
Collaborator Author

@wg21bot wg21bot commented Dec 18, 2021

P2093R11 Formatted output (Victor Zverovich)

@brycelelbach brycelelbach added the scheduled-for-library-evolution label Dec 19, 2021
@jensmaurer jensmaurer modified the milestones: 2021-telecon, 2022-telecon Jan 1, 2022
@cor3ntin
Copy link
Collaborator

@cor3ntin cor3ntin commented Jan 16, 2022

2021-12 Library Evolution Electronic Poll Outcomes

POLL: Send [P2093R11] (Formatted Output) to Library Working Group for C++23, classified as an addition ([P0592R4] bucket 3 item).

Strongly Favor Weakly Favor Neutral Weakly Against Strongly Against
18 9 2 0 1

Consensus in favor, forwarded to LWG

@cor3ntin cor3ntin removed LEWG ready-for-library-evolution-electronic-poll scheduled-for-library-evolution labels Jan 16, 2022
@wg21bot
Copy link
Collaborator Author

@wg21bot wg21bot commented Jan 22, 2022

P2093R12 Formatted output (Victor Zverovich)

@wg21bot
Copy link
Collaborator Author

@wg21bot wg21bot commented Feb 22, 2022

P2093R13 Formatted output (Victor Zverovich)

@JeffGarland
Copy link
Member

@JeffGarland JeffGarland commented Mar 26, 2022

LWG did a final review on 2022-03-25 and approved for c++23

https://wiki.edg.com/bin/view/Wg21telecons2022/P2093-20220325

poll: include P2093r14 into C++23?

F A N
7 0 0

@JeffGarland JeffGarland added tentatively-ready-for-plenary and removed medium labels Mar 26, 2022
@wg21bot
Copy link
Collaborator Author

@wg21bot wg21bot commented Apr 25, 2022

P2093R14 Formatted output (Victor Zverovich)

@cor3ntin cor3ntin added the plenary-approved label Jul 25, 2022
@jensmaurer jensmaurer linked a pull request Aug 3, 2022 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
B3 - Addition C++23 IS LWG plenary-approved tentatively-ready-for-plenary
Projects
None yet
Development

Successfully merging a pull request may close this issue.

10 participants