Skip to content

Conversation

@ARF1
Copy link

@ARF1 ARF1 commented Feb 24, 2017

This enables the help in the unix and windows ports.

Listing all builtin modules by calling help('modules') is enabled and a hint to this functionality is added to the default help text, if the functionality is built into a port.

The esp8266 help text was similarly amended.

Default help() message with modules help enabled:

MicroPython v1.8.7 on 2017-02-24; win32 version
Use Ctrl-D to exit, Ctrl-E for paste mode
>>> help()
Welcome to MicroPython!

For online docs please visit http://docs.micropython.org/

Control commands:
  CTRL-A        -- on a blank line, enter raw REPL mode
  CTRL-B        -- on a blank line, enter normal REPL mode
  CTRL-C        -- interrupt a running program
  CTRL-D        -- on a blank line, exit or do a soft reset
  CTRL-E        -- on a blank line, enter paste mode

For further help on a specific object, type help(obj).
For a list of all builtin modules, type help('modules').
>>>

ARF added 2 commits February 24, 2017 10:47
…help text.

This enables listing all builtin modules by calling `help('modules')` in the
unix and windows ports.

It also adds a hint to this functionality to the default help text, if the
functionality is built into a port.

The esp8266 was similarly ammended.
@ARF1 ARF1 force-pushed the enable_help_modules_unix_windows branch 2 times, most recently from 9a0dcc0 to f1facfd Compare February 24, 2017 11:26
@pfalcon
Copy link
Contributor

pfalcon commented Feb 24, 2017

We generally fight to make things smaller, not bigger. This contradicts #2908, so even if it's added, would need to be removed as the next step.

@ARF1
Copy link
Author

ARF1 commented Feb 24, 2017

@pfalcon Of course it up to you. I clearly do not yet fully understand this projects philosophy.

I understand keeping things compact with regard to MCU use:

This disables the help in the unix port by default but keeps the configuration
option in place to allow users to enable it if desired.
@ARF1 ARF1 force-pushed the enable_help_modules_unix_windows branch from c205507 to 3668da5 Compare February 24, 2017 17:27
@ARF1
Copy link
Author

ARF1 commented Feb 24, 2017

@pfalcon Disabled help() for unix port to remove conflict with #2908.

@pfalcon
Copy link
Contributor

pfalcon commented Feb 25, 2017

I clearly do not yet fully understand this projects philosophy.

But I definitely like your approach, at the "high level" at least. But (and I see that oftentimes), I don't see these "high level ideas" leading to the (obvious) outcomes. For example, you understand that (1) understanding a project philosophy is crucial to be able to contribute to it productively, what would be the outcome of that? Of course, it would be the looking to update oneself on that philosophy. And of course, any sufficiently advanced project would know a proposition (1) itself, and provide materials for that, as it's in project's best interest to get more useful contributions. In MicroPython case, anyone who tries to submit a bug ticket or pull request is presented with a link describing the project philosophy: https://github.com/micropython/micropython/wiki/ContributorGuidelines . So, you had a chance to read it half-dozen of times already.

#define MICROPY_PY_BUILTINS_COMPILE (1)
#define MICROPY_PY_BUILTINS_NOTIMPLEMENTED (1)
#define MICROPY_PY_BUILTINS_POW3 (1)
#if !defined(MICROPY_PY_BUILTINS_HELP)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please do this idiom the same way it's already done in this file (hint: #ifndef, no indent).

@pfalcon
Copy link
Contributor

pfalcon commented Feb 26, 2017

Would it not make sense to have at least the windows port as novice-friendly as possible?

How would that help? Novices aren't going to use MicroPython on big systems, because they cay use CPython there. Only advanced users, interested in much smaller size of MicroPython, would run it there. And being smaller is exactly the property being compromised with this patch.

So, please make necessary changes, please squash everything together, and please update commit message and PR title to be current. Thanks.

@pfalcon
Copy link
Contributor

pfalcon commented Feb 26, 2017

Well, I'm giving this yet another try of being merged right away. As can be seen, previous time what stopped me is many inconsistencies in the current patch. Given that I don't anticipate anything but "Hint to help('modules')." part to be merged from this (as my personal opinion), I'm giving another try to merge just that part. And then what I see is:

Author: ARF <none@none>

Well, we never paid attention to such things before, and we definitely have commits with non-real-names and not-valid-emails, but it's really the first time I see it done like that. So, please consider using the real name and real email address as most of the other people do. For the lack of more explicit forms of sign-off (we don't require signing contribution agreement on paper and even don't require git's Signed-off-by), contributor's act of submitting a pull request to the project construes their agreement with the project license and principles. Please make sure that your signature on that document is clear and legible.

dpgeorge added a commit that referenced this pull request Jul 13, 2021
@dpgeorge
Copy link
Member

This was done in 6430cd3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants