The Racket repository
Go to file
Leif Andersen 090eed4b28
Add option to create relative paths for 'serialize' (#2166)
* Add option to create relative paths for 'serialize'

Serialize would previously always create complete byte-string paths.
This adds an optional parameter to serialize (#:relative-to) to enable
relative path creation.

Now when deserialize finds a relative path, it resolves it with
respect to `current-load-relative-directory`.

* Moved fasl's path<->relative-path-elements functions

I moved it into the private/relative-path module, so that serialize
can make use of it.

* Update serialize to use relative-path.

* Add tests.

* And update docs.
2018-07-12 09:12:48 -04:00
pkgs Add option to create relative paths for 'serialize' (#2166) 2018-07-12 09:12:48 -04:00
racket Add option to create relative paths for 'serialize' (#2166) 2018-07-12 09:12:48 -04:00
.gitattributes
.gitignore gitignore: vim swapfiles 2017-07-29 11:53:06 -04:00
.mailmap mailmap updates & fixes. 2013-04-03 18:10:22 -04:00
.travis.yml Disable pkg tests on Travis. 2017-06-22 13:33:03 -04:00
appveyor.yml use VS 2013 on AppVeyor 2018-05-15 11:07:06 -06:00
INSTALL.txt io: repairs for Windows path maniplation 2018-03-23 10:37:59 -06:00
Makefile makefile: add cs-base and cs-in-place targets 2018-07-03 09:11:07 -06:00
README.md switch to a new, Racket-implemented expander & module system 2018-02-26 13:19:53 -07:00

This is the source code for the core of Racket. See "INSTALL.txt" for full information on building Racket.

To build the full Racket distribution from this repository, run make in the top-level directory. To build minimal Racket, run make base.

The rest of the Racket distribution source code is in other repositories, mostly under the Racket GitHub organization.

Contribute to Racket by submitting a pull request, joining the development mailing list, or visiting the IRC channel.

License

Racket Copyright (c) 2010-2018 PLT Design Inc.

Racket is distributed under the GNU Lesser General Public License (LGPL). This implies that you may link Racket into proprietary applications, provided you follow the rules stated in the LGPL. You can also modify Racket; if you distribute a modified version, you must distribute it under the terms of the LGPL, which in particular states that you must release the source code for the modified software.

See racket/src/COPYING_LESSER.txt for more information.