I've looked for a while, and it seems that there is no easy way to do
this, not even in bash, and worse with /bin/sh. So this is kind of
resorting to a simple parsing of the input, and using `eval' if it
starts with a tilde. Note the hack of not doing that when there is a
space, otherwise the `eval' thing will silently ignore it.
This hack means that it's easy to get into a mess if quotes are used
after a tilde, but that was already the case with the use of `eval' to
handle environment variables. It's not a real security issue, however,
since we're talking about a user who can just run any command anyway.
Also including a test file for the expansion functionality. If anyone
wants to improve this code, making the tests pass would reveal the
tricky issues.
[FWIW, I've asked on the #bash channel, and the only serious suggestion
was getting the paths as command-line arguments. This will, however,
defeat the point of being newbie friendly...]
Closes PR 12893.
The following packages were removed:
- combinator-parser
(see `asumu/combinator-parser` on PLaneT)
- tex2page
(see `asumu/tex2page` on PLaneT)
- test-box-recovery
The examples make up the majority of the front page, and it turns out
that google used some of these links in "sitelinks" in search result.
These links should be the main entry points, and we ended up having such
gems as "Printf" be there. They provide a way to "demote" URLS so they
won't show there, but doing that for one link means that another will
pop in (and there's a limit of a 100 such demotions). So add this in an
attempt to make it not consider them as things that can be used in the
sitelinks. This might be reverted if it doesn't help.
(Note that this is discouraged as a way to "sculpt pagerank", but the
purpose here is not to affect how they crawl the web pages and make page
reputation flow, but only to cover up for a missing feature that ends up
with horrible sitelinks. The pages are scanned anyway from the doc
pages.)
* The main page's title appears in search results, so use "The Racket
Language" instead of "Racket". Additional minor tweaks to a few more
titles to make them presentable as search results.
* Add a `#:description' keyword to make it easy to add it to pages. Add
such texts to the main page, downloads, community, learning, people,
and mailing list pages.
* Add a <meta name="robots" content="NOODP" /> to the front page, to
avoid getting the ODP (dmoz) blurb, hopefully the new and improved
description(s) will be used instead. (If not, this should be
reverted.)
This fixes drdr, which is using a pre-submodules version of racket.
There was also a use of one-argument `string-join' that is fixed that
has been there for a while but drdr uses the api directly.
Simplified code, and additional testing for redundant properties, and
for properties that can be collapsed into a parent directory (this might
be dropped or used only for notification on differences, see
commentage).
Also, make drdr test itself reflectively.
The code is improved, and also the default changes for *.rkt files:
there is no need for any flags -- "-q" is redundant, and with no flags
it's doing "-u" which is the same as "-t" (with an added "-N").
This was broken in the class100 port. The init arguments
previously handled by the class100*/kw macro need to be
explicitly passed down.
Also, an (init-rest) is needed at the leaves of the class
hierarchy to ensure that internal super init args don't
leak via error messages. (the class100 macro always
inserts these)
Added a test file so similar breakage is detectable in the
future.
1. Lots of #lang-ization, other racketizations, code improvements, etc.
2. Some files that were not working now do.
3. "collects/tests/aligned-pasteboard" had some files that were near
duplicates of "collects/mrlib/private/aligned-pasteboard/tests".
I've removed the former since in a few places it looked like an older
version (eg, there were bogus references to a non-existent
"utils.rkt"). The former has more files that are in runnable
condition now.
4. There are plenty of tests that look like they're failing, but it
wasn't shown since they just return #f, and when they were running
with a "-f" these results weren't displayed.
5. I have no idea about the code, this is all just reshuffling and minor
editing.
There were many such properties that were leftover from before the big
GUI rewrite where the gracket executable was needed, and now there is no
longer any need for these things. There are two exceptions:
* There is a drdr feature that forces all tests that use gracket to run
sequentially, which is used for tests that rely on some actual state
of shown windows. I ran all of the files and monitored for windows
popping up, and left the test to use gracket in these cases.
* There are a few cases where running "racket -f <file>" resulted in an
unbound identifier, whereas "gracket -f <file>" does not. These are
because of the different global namespace, and I will fix them (props
and the files) in a different commit.
One of the expected results of this is that a drdr might run faster,
because the serial-running hack above should now be applied only where
relevant. (And some of the drracket tests are very long.)
This commit is pushed by itself to identify possible problems with a
drdr run that tests only this change.
Check that the entries are sorted, and check that there's a
`responsible' for all files on disk, except for known exceptions. It
might be better to use "git ls-tree HEAD <path>" instead of looking at
the filesystem, but then it won't work on drdr.
Warning: I tried a bunch of things and it looks like it works, but I'm
not using bash regularly so there might be some problems in this.
Committing by request of the bashers.
It would still need some work to make it work as (I think) was intended.
For example _find_exe() should be used to find the current executable
when completing, but it's used at the toplevel.
* Add a reference from the community page to the bug reports page.
* Make it possible to subscribe to lists right from the community page.
Improve the email input boxes with placeholder text and a short
explanation on hovering.