Developer Forums

RSS for tag

Ask questions about how to use the Apple Developer Forums. Discuss forums bugs and enhancements requests that you’ve filed via Feedback Assistant.

Post

Replies

Boosts

Views

Activity

Upvoting own post dilemma.
Users can upvote their own posts, yet they don't by default upon posting them. Reddit, for comparison, continues to allow users to remove their own-post upvotes, but upvotes them for the user by default. Other forums like Stack Overflow disallow own-post upvoting. This forum has the worst of both worlds, for users can gain an algorithmic advantage by upvoting their own. It might seem like a minor issue, because it is. But it's an issue in my eyes regardless.
5
2
984
Jul ’23
Bug Reporting: How and Why?
I file a lot of bug reports. I also ask a lot of third-party developers to file bug reports about problems they see. This post is my attempt at collecting together some hints and tips about Apple’s bug reporting process. To file a bug report, use Feedback Assistant. To file an enhancement request, use Feedback Assistant. In the “What type of issue are you reporting?” popup, choose Suggestion. If you’re filing a bug against an API, choose Developer Technologies & SDKs at the top level. The technologies popup should then list familiar items, from Accelerate Framework to XPC. If you can’t find the correct item, select “Something else not on this list”. Feedback Assistant is both a website and an app. For details on how to access the app, see Opening the app on the Developer > Bug Reporting page. For lots of great hints and tips about filing bugs, see File effective bug reports. I may repeat some of the info covered by that article, but only where I think it’s particularly important. After filing a bug report, please include the bug number in your DevForums post. Feedback Assistant shows the bug number in both the bug list and the bug detail view. Bug numbers start with FB and continue with a sequence of digits. For example, a recent bug report posted here on DevForums was FB11357055. Including the FB prefix avoids any confusion as to what type of bug number this is. Occasionally you’ll see other types of bug numbers. In release notes they are just in parens, so (99071807), and in DTS documents they have an r. prefix, so (r. 99071807). These are Radar numbers. Radar is the internal bug system here at Apple. Other developers can’t see your bug report. However, posting the bug number is still important for a couple of reasons: It allows Apple folks to quickly track down your issue. If another developer wants to file a related bug, they can reference your bug number in their bug report. You can share bug reports with other members of your team. For details on how to do that, see Collaborating with your team on the Developer > Bug Reporting page. Otherwise you can’t see a bug report filed by another developer, or one filed internally at Apple. One option here is to file your own bug and request that it be marked as a duplicate of the original bug. You’ll then be notified when the original bug is closed. The File effective bug reports article discusses the importance of including a sysdiagnose log with your bug report. I have a few additional tips: Include a sysdiagnose log from the machine that’s having the problem. Sometimes I see folks with an iOS problem include a sysdiagnose log for their development Mac )-: Include a sysdiagnose log even if you attach a test project that reproduces the problem. The contents of the log help with screening, making sure that your bug gets to the right person quickly. And that person will be very grateful to have your test project! If multiple machines are involved — for example, you’re reporting a Handoff problem — include a sysdiagnose log from each machine. Trigger the sysdiagnose log as soon as possible after you see the problem. The sooner you trigger the log, the more likely it is to capture relevant info. If the problem is hard to reproduce, see Using a Sysdiagnose Log to Debug a Hard-to-Reproduce Problem for hints on how to capture an actionable sysdiagnose log. If you install a debug profile, install it before you reproduce the problem. These profiles typically enable more logging, and you want that logging to be active at the time of the problem. Most profiles activate immediately but some require that you restart. Follow the instructions that came with the profile. When reproducing the problem, make a rough note of the time and include that in your bug report. This doesn’t have to be super precise. Just note down the time, with seconds, shortly after you reproduce the problem. If the bug involves a crash, reproduce the crash outside of Xcode and then take your sysdiagnose log. This means running your code as the user would, so running an app from the Finder on macOS, running an app from the Home screen on iOS, and so on. If you reproduce the crash inside Xcode, the Xcode debugger catches the crash and prevents the system from generating a crash report to include in the sysdiagnose log. File focused bug reports. Imagine you’re seeing two problems, A and B, related to the same API. Don’t file a single bug that covers both A and B. Rather, file separate bugs for A and B. Feel free to reference your A bug in your B bug, and vice versa. Finally, some personal notes: DevForums is not an official support channel. Mentioning a problem here is not the same as filing a bug about it. That’s true even if you’re discussing your issue with an Apple person. Apple is a big company, and it’s very unlikely that the person you’re talking to is directly responsible for fixing your bug. Historically I used to post a lot of Radar links, of the forms rdar:nnn, where nnn includes the bug number. I no longer use these links because I’ve found that they confuses folks. They click the link and wonder why it does nothing. If you post an FB number here, DevForums automatically turns it into a link. However, that link is only useful to you. Other folks can’t access the bug via that link. I’ve filed a bug against DevForums requesting that it only generate this link for the bug’s originator (r. 92946014). In the meantime, I work around this by putting FB numbers in code style, which disables this link generation. If you want to share bug information outside of DevForums, one popular option is Open Radar (https://openradar.appspot.com/). Apple uses a lot of open source and many open source projects maintain their own bug tracker. Two big examples are Swift and WebKit. If your bug originates in such an open source project, consider filing it in the project’s bug tracker. You can then go on to submit a pull request with the fix (-: Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = "eskimo" + "1" + "@" + "apple.com" Revision History 2024-03-07 Made minor editorial changes. 2023-10-26 Added a link to Using a Sysdiagnose Log to Debug a Hard-to-Reproduce Problem. Added a recommendation to file focused bug reports. 2023-06-28 Updated the advice on how to file an API-level bug based on recent changes to Feedback Assistant. Corrected some link titles. 2023-03-21 Added a bunch of bullets to the personal notes section. 2023-03-13 Extended the discussion of seeing other folks’ bugs to make it clear that you can’t see bugs filed internally at Apple. 2022-12-13 Added advice about the “Something else not on this list” option. 2022-09-01 Added a personal notes section at the end. Added a new bullet in the sysdiagnose section about running your app outside of Xcode. Made other minor editorial changes. 2022-08-29 Added a note about filing duplicate bugs. 2022-08-24 First posted.
0
0
11k
Aug ’22
Quinn’s Top Ten DevForums Tips
I spend a lot of time here on DevForums. Over the years I’ve read many posts, both good and bad. This page is my attempt at writing down what makes a good one. Hopefully some of you will find it useful. Before you read this, read the official Apple Developer > Support > Developer Forums page. If you have questions or feedback about any of the points raised here, start a new thread in the Developer Tools & Services > Developer Forums subtopic. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = "eskimo" + "1" + "@" + "apple.com" Quinn’s Top Ten DevForums Tips Here are my top ten DevForums tips: Is DevForums right for you? Search before you ask Keep your expectations realistic Topic, subtopic, and tags Craft a quality post Prefer text over images Include details with your questions Crash reports Cross posting courtesy Resize screenshots Include a Spinal Tap reference Close your threads Think about your title Post URLs in the clear Many of these boil down to one word: Empathy. Think about the person who’s reading your post. Can they read it? Will they understand it? Will it help them? 1. Is DevForums right for you? To quote Apple Developer > Support > Developer Forums, Apple Developer Forums (aka DevForums) is: a great place to post questions, exchange knowledge, and connect with fellow developers and Apple engineers on a variety of development topics. DevForums is focused on developer issues. That includes the APIs in Apple’s platform SDKs, Apple tools, developer-oriented Apple services like App Store Connect, and accessory development. If you have a user-level question, you’ll have more luck over in Apple Support Communities, run by Apple Support. DevForums is focused on Apple technologies. If you’re using a third-party tool or library, feel free to ask questions about it here, but you’re more likely to find folks with relevant expertise in that technology’s dedicated support channel. If you want to file a bug report, do that using Feedback Assistant. If you want to discuss a bug you’ve already filed, DevForums is a great place for that. Make sure to include your bug number in your post. For more hints and tips on the bug reporting process, see Bug Reporting: How and Why?. 2. Search before you ask DevForums has a history stretching back to 2015. Many questions have been asked and answered here. Before you start a thread, search the forums for similar threads. For details about the search syntax, see Apple Developer > Support > Developer Forums. For a quick summary, hover over the help (?) button next to the search field. Remember that DevForums is world readable and thus indexed by Internet search engines. 3. Keep your expectations realistic DevForums is an informal support channel; no one is being paid to answer DevForums questions full time. Keep that in mind when you post. Apple provides a number of formal support channels. To request formal support, go to the Apple Developer > Contact Us page. One of those support channels is the code-level support provided by Apple Developer Technical Support (DTS). For more information about DTS, see Apple Developer > Support > Requesting Technical Support. Asking about Apple’s unannounced plans is unlikely to yield useful results. Apple folks can’t discuss The Future™, and non-Apple folks can only speculate. Apple folks can’t discuss Apple’s internal business practices. For example, we can’t answer why question — “Why did Apple do this?” or “Why hasn’t Apple done that?” — unless there’s existing documentation that offers an explanation. If you think Apple should do something differently, file a bug that explains what you’d like to see change and the rationale for that. Not everyone works the same hours as you do. DevForums is a worldwide community, so there are time zones to consider, but there’s also just individual preferences. This is especially relevant around weekends, where your reply on Friday may not be seen by other folks until Monday. Different folks use DevForums in different ways. Some folks lean in to the notification system, whereas others allocate certain times of the day, or the week, to help out. 4. Topic, subtopic, and tags DevForums organises threads by two attributes: A high-level topic and subtopic A fine-grained set of tags Folks willing to offer help often monitor a specific set of subtopics or tags, and only see threads with those attributes. To increase the odds of getting a response, choose your subtopic and tags carefully. The list of subtopics is immediately visible on the top-level page. For a list of tags and their descriptions, go to Developer > Support > Forums Tags. That’s a lot of tags! When choosing a subtopic, choose the most specific one. For example, if you have a question about SwiftUI, choose UI Frameworks > SwiftUI rather than Programming Languages > Swift. The latter is primarily focused on the Swift language itself. When choosing a tag, read the description of that tag. With so many tags there are inevitably cases where a tag doesn’t mean what you think it means. For example, the Exception Handling tag is about the rarely used Exception Handling framework, not about exception handling in general, and the description makes that clear. 5. Craft a quality post When replying, use a reply rather than a comment. Comments are best reserved for short messages, like “Thanks!” or “See this other thread.” IMPORTANT If you reply in the comments, other folks on the thread may not be notified of your reply. DevForums supports Markdown formatting, similar to that used on GitHub and by DocC. The editor UI has buttons for the most common things, like Bold and Italic, but don’t feel the need to limit yourself to that. Correct formatting is particularly important for preformatted text: Use the Inline Code button, which inserts single backquote delimiters, for inline text in code style: identifiers and so on. Use the Code Block button, which inserts triple backquote delimiters, for blocks of text in code style: code snippets, logs, and so on. After submitting your post, look it over to make sure that it reads well. If not, you have a short window where you can edit the post to fix things. 6. Prefer text over images Don’t use screenshots for data that’s essentially textual, like code snippets and logs. For example, if you want to post a log message, include that as text rather than adding a screenshot. That makes it much easier for your readers to work with the text. Use the Code Block button, which inserts triple backquote delimiters, to format blocks of text in code style. Reserve screenshots for situations where the issue is visual, for example: When discussing view layout problems When posting instructions to achieve some task in a GUI app, like Xcode 7. Include details with your questions When starting a thread, try to include all the relevant details in your post. If you skimp on these details, folks will have to reply asking for them, and that slows things down. Specifically, anticipate the following questions: What platform are you targeting? And what version of that platform? What version of Xcode are you using? What version of the OS are you testing on? What specific API are you using? What are the exact steps you took? If something failed, what are the symptoms of that failure? If an API returned an error, what was that error? If nothing failed, what results did you see? And what were you expecting? If you filed a bug, what was the bug number? Have you tried reproducing the issue in a small test project? What else have you tried? For more thoughts on this, see Tips on writing forums posts. Oh, and if you’re having a build problem, consider attaching a full build log. 8. Crash reports If you post a crash report, follow the instructions in Posting a Crash Report. 9. Cross posting courtesy Don’t start multiple threads for the same issue. That just wastes everyones time. Sometimes this happens by accident. If that’s the case, add a comment to one of the threads redirecting folks to the other one. If you find a bunch of old threads that might be related to your issue, don’t post full replies to all of them. Pick a lead thread and post your full reply there, then reply on the other threads with a link to the lead thread. Alternatively, start a new thread and reply on all the old threads with a link to that. That’ll help focus the discussion on your specific issue. If you post your question to another support channel, provide a link to that in your DevForums question, and vice versa. That avoids folks working on a question that’s already been answered. 10. Resize screenshots If your post includes an image, make sure it renders well. Screenshots from Retina displays are often ridiculously large. Use Preview to crop the screenshot and, if necessary, downsample it by 50% (using Tools > Adjust Size). 11. Include a Spinal Tap reference To be clear, this is a joke. While the occasional Spinal Tap reference is allowed, please don’t add one to all your posts (-: 12. Close your threads If someone replies with the answer you need, mark that as correct. That gives them some credit and helps other folks with similar questions find that answer. If you find the answer by yourself, please post a short summary of what you did. Feel free to mark that correct. If you accidentally post two copies of the same question, choose one as the primary and, in the other one, add a comment that links to it. 13. Think about your title When creating a thread, think carefully about your title. Your title is your thread’s ‘marketing statement’, a way to entice folks to read your post. Try to summarise your issue in 15 words or less. Adding tags to your title makes it harder to read. Instead, add your tags with the tagging UI. See tip 4 for more on tags. 14. Post URLs in the clear DevForums has a list of websites you can link to at will. For example, it places no restrictions on links to Swift Forums. To link to a site that’s not on the allowlist, skip the Markdown link syntax and post your link in the clear. So, this won’t work: Apple is based in [Cupertino](https://www.cupertino.org). but this will: Apple is based in Cupertino. https://www.cupertino.org Revision History 2024-08-29 Added a link to Creating a test project. 2024-08-07 Add more hints to tip 7. 2024-05-27 Reworked tip 4 to account for the new topic and subtopic model. Made other minor editorial changes. 2023-11-16 Added a link to [Public and Private Tags][refPaPT]. 2023-02-22 Expanded tip 3. 2023-02-10 Added a note about why questions to tip 3 (another great suggestion from Scott). Added a link to Bug Reporting: How and Why?. 2023-01-09 Added a note about tags to tip 13. 2022-12-09 Expanded tip 12. 2022-08-22 Expanded tip 5 to explain why you shouldn’t reply in the comments. 2022-08-11 Expanded tip 9. 2022-06-17 Added tip 14. Updated the preamble to include a link to the main DevForums page. 2022-06-04 Added a discussion of unannounced plans to tip 3 (thanks to Scott). 2022-06-03 Added tip 13. 2022-05-24 Added tips suggested by Claude31 and Scott. 2022-05-23 First posted.
0
0
8.2k
May ’22
Desperately needed features
It looks like these new forums are based on the new Apple Support Communities code. I frequently post on ASC so I know what does and does not work there. I will focus on features that need to be imported from ASC and features that don't. Email notifications - Some people really like to work from e-mail notifications. ASC has notifications for participation, following, points, etc. Just make sure they always default to "OFF". Subscriptions - ASC already has this and is (in my opinion) the ideal way to find and respond to questions. Essentially, this is just searching on multiple tags. The subscriptions is an interface to let me define what tags I want to search for by default. Sorting - Primarily, we need to see messages sorted by descending timestamp. Sorting - I would like to be able to sort by both created or updated timestamps. Sometimes I want to see bona fide new messages. Searching - This is ASC's big weak spot. Search is virtually useless on ASC. You have to really tweak the "filters" to get anything useful out of it. Re-do this and then back-port it to ASC please. Threads - Thread view is all messed up. This thread (https://developer.apple.com/forums/thread/134075) is a good example. It seems to be organized hierarchically, with new replies to individual posts appearing immediately after the post being replied to. This is really confusing. Just order it by timestamp. ASC has a feature to automatically guess the target forum (tag in these forums) from the content of the question being asked. That would be useful here. Otherwise, you risk everything going into "iOS". Provide an easy way to see my own posts to see if anything has been updated. ASC doesn't really offer this. I have found a custom filter query that I use to simulate the "Inbox" of an old version of ASC. None of those custom filters seem to work over here. This is another opportunity to fix and then port back to ASC. Filtering - ASC has a complicated system of filtering. Please don't import that. 10. Subscriptions - If you do implement a subscriptions system like ASC, pay attention to unpopular forums. Otherwise, new question in popular forums will drown out questions in more specific forums. The "Top Tags" list has already started that. Of course "iOS" and "macOS" will be most popular. But if everybody uses only those tags, they become useless. Specialties - This is part of ASC gamification system. I don't necessarily mind them, but they aren't implemented very well on ASC. One has to perform specific actions, such as asking a question, to start earning a speciality. What about people who don't ask questions? How do you handle people with multiple specialties? ASC seems to pick one at random and display it, which is very annoying. Guidelines - I think the Terms of Use need to be expanded and be crystal clear about what is allowed and not. I've just seen my first help wanted ad here. Is that allowed? I don't know. Other comments: Very nice use of Markdown in the editor. This is probably not something that could be ported back to ASC. Developers should be able to handle it though. I like the documentation links at the top of tag results pages.
6
0
1.5k
Jun ’20