about summary refs log tree commit diff
path: root/src/libsemver
AgeCommit message (Collapse)AuthorLines
2014-10-19Remove a number of deprecated cratesAlex Crichton-462/+0
All of these crates have been deprecated for some time and properly live in the rust-lang organization as cargo-based crates. To update your code, depend on the rust-lang/foo repository via cargo. [breaking-change]
2014-10-09Use the same html_root_url for all docsBrian Anderson-1/+1
2014-10-09Revert "Update html_root_url for 0.12.0 release"Brian Anderson-1/+1
This reverts commit 2288f332301b9e22db2890df256322650a7f3445.
2014-10-07Update html_root_url for 0.12.0 releaseBrian Anderson-1/+1
2014-08-12Allow deprecation in deprecated librariesAaron Turon-0/+1
2014-07-31Deprecate semver.Ilya Dmitrichenko-1/+2
2014-07-11Update doc URLs for version bumpBrian Anderson-1/+1
2014-07-10std: Add some implementation of common traitsAlex Crichton-28/+30
- semver::Version is now Eq, Ord, and Hash - Path is now PartialOrd and Ord
2014-07-09Register new snapshotsAlex Crichton-2/+0
Closes #15544
2014-07-08std: Rename the `ToStr` trait to `ToString`, and `to_str` to `to_string`.Richo Healey-6/+6
[breaking-change]
2014-07-05Add #[crate_name] attributes as necessaryAlex Crichton-1/+3
2014-07-02Merge remote-tracking branch 'origin/master' into 0.11.0-releaseAlex Crichton-29/+30
Conflicts: src/libstd/lib.rs
2014-06-29Implement RFC#28: Add PartialOrd::partial_cmpSteven Fackler-29/+30
I ended up altering the semantics of Json's PartialOrd implementation. It used to be the case that Null < Null, but I can't think of any reason for an ordering other than the default one so I just switched it over to using the derived implementation. This also fixes broken `PartialOrd` implementations for `Vec` and `TreeMap`. RFC: 0028-partial-cmp
2014-06-27Update to 0.11.0 0.11.0Alex Crichton-2/+2
2014-06-17Mark all crates except std as experimentalBrian Anderson-0/+1
2014-06-11rustc: Remove ~[T] from the languageAlex Crichton-1/+0
The following features have been removed * box [a, b, c] * ~[a, b, c] * box [a, ..N] * ~[a, ..N] * ~[T] (as a type) * deprecated_owned_vector lint All users of ~[T] should move to using Vec<T> instead.
2014-05-30std: Rename {Eq,Ord} to Partial{Eq,Ord}Alex Crichton-4/+4
This is part of the ongoing renaming of the equality traits. See #12517 for more details. All code using Eq/Ord will temporarily need to move to Partial{Eq,Ord} or the Total{Eq,Ord} traits. The Total traits will soon be renamed to {Eq,Ord}. cc #12517 [breaking-change]
2014-05-28std: Remove format_strbuf!()Alex Crichton-4/+4
This was only ever a transitionary macro.
2014-05-27std: Rename strbuf operations to stringRicho Healey-15/+15
[breaking-change]
2014-05-27std: Remove String's to_ownedRicho Healey-4/+4
2014-05-24core: rename strbuf::StrBuf to string::StringRicho Healey-4/+4
[breaking-change]
2014-05-21Change static.rust-lang.org to doc.rust-lang.orgAlex Crichton-1/+1
The new documentation site has shorter urls, gzip'd content, and index.html redirecting functionality.
2014-05-15Updates with core::fmt changesAlex Crichton-5/+5
1. Wherever the `buf` field of a `Formatter` was used, the `Formatter` is used instead. 2. The usage of `write_fmt` is minimized as much as possible, the `write!` macro is preferred wherever possible. 3. Usage of `fmt::write` is minimized, favoring the `write!` macro instead.
2014-05-14libsemver: Remove all uses of `~str` from `libsemver`Patrick Walton-21/+25
2014-05-12Add the patch number to version strings. Closes #13289Brian Anderson-1/+1
2014-04-18Replace all ~"" with "".to_owned()Richo Healey-19/+19
2014-04-10libstd: Implement `StrBuf`, a new string buffer type like `Vec`, andPatrick Walton-2/+3
port all code over to use it.
2014-04-05Make the fields of semver::Version public again.Ms2ger-5/+5
2014-04-03Bump version to 0.11-preBrian Anderson-1/+1
This also changes some of the download links in the documentation to 'nightly'.
2014-03-31Bump version to 0.10Alex Crichton-1/+1
2014-03-28Convert most code to new inner attribute syntax.Brian Anderson-8/+8
Closes #2569
2014-03-22Add #[deny(deprecated_owned_vector)] to several modules.Huon Wilson-0/+1
2014-03-20Removing imports of std::vec_ng::VecAlex Crichton-1/+0
It's now in the prelude.
2014-03-20rename std::vec_ng -> std::vecDaniel Micay-1/+1
Closes #12771
2014-03-15log: Introduce liblog, the old std::loggingAlex Crichton-1/+0
This commit moves all logging out of the standard library into an external crate. This crate is the new crate which is responsible for all logging macros and logging implementation. A few reasons for this change are: * The crate map has always been a bit of a code smell among rust programs. It has difficulty being loaded on almost all platforms, and it's used almost exclusively for logging and only logging. Removing the crate map is one of the end goals of this movement. * The compiler has a fair bit of special support for logging. It has the __log_level() expression as well as generating a global word per module specifying the log level. This is unfairly favoring the built-in logging system, and is much better done purely in libraries instead of the compiler itself. * Initialization of logging is much easier to do if there is no reliance on a magical crate map being available to set module log levels. * If the logging library can be written outside of the standard library, there's no reason that it shouldn't be. It's likely that we're not going to build the highest quality logging library of all time, so third-party libraries should be able to provide just as high-quality logging systems as the default one provided in the rust distribution. With a migration such as this, the change does not come for free. There are some subtle changes in the behavior of liblog vs the previous logging macros: * The core change of this migration is that there is no longer a physical log-level per module. This concept is still emulated (it is quite useful), but there is now only a global log level, not a local one. This global log level is a reflection of the maximum of all log levels specified. The previously generated logging code looked like: if specified_level <= __module_log_level() { println!(...) } The newly generated code looks like: if specified_level <= ::log::LOG_LEVEL { if ::log::module_enabled(module_path!()) { println!(...) } } Notably, the first layer of checking is still intended to be "super fast" in that it's just a load of a global word and a compare. The second layer of checking is executed to determine if the current module does indeed have logging turned on. This means that if any module has a debug log level turned on, all modules with debug log levels get a little bit slower (they all do more expensive dynamic checks to determine if they're turned on or not). Semantically, this migration brings no change in this respect, but runtime-wise, this will have a perf impact on some code. * A `RUST_LOG=::help` directive will no longer print out a list of all modules that can be logged. This is because the crate map will no longer specify the log levels of all modules, so the list of modules is not known. Additionally, warnings can no longer be provided if a malformed logging directive was supplied. The new "hello world" for logging looks like: #[phase(syntax, link)] extern crate log; fn main() { debug!("Hello, world!"); }
2014-03-15auto merge of #12923 : sfackler/rust/vecify, r=brsonbors-25/+24
2014-03-15Remove ~[] from libsemverSteven Fackler-25/+24
2014-03-15Add rustdoc html crate infoSteven Fackler-0/+3
2014-03-14lint: add lint for use of a `~[T]`.Huon Wilson-0/+2
This is useless at the moment (since pretty much every crate uses `~[]`), but should help avoid regressions once completely removed from a crate.
2014-02-25Exclude build metadata from equality checking.OGINO Masanori-13/+25
Build metadata is already excluded from precedence checking in line with the spec. For consistency and providing strict total ordering for Version, build metadata should also be ignored in Eq impl. Closes #12438 Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2014-02-23Remove all ToStr impls, add Show implsAlex Crichton-15/+0
This commit changes the ToStr trait to: impl<T: fmt::Show> ToStr for T { fn to_str(&self) -> ~str { format!("{}", *self) } } The ToStr trait has been on the chopping block for quite awhile now, and this is the final nail in its coffin. The trait and the corresponding method are not being removed as part of this commit, but rather any implementations of the `ToStr` trait are being forbidden because of the generic impl. The new way to get the `to_str()` method to work is to implement `fmt::Show`. Formatting into a `&mut Writer` (as `format!` does) is much more efficient than `ToStr` when building up large strings. The `ToStr` trait forces many intermediate allocations to be made while the `fmt::Show` trait allows incremental buildup in the same heap allocated buffer. Additionally, the `fmt::Show` trait is much more extensible in terms of interoperation with other `Writer` instances and in more situations. By design the `ToStr` trait requires at least one allocation whereas the `fmt::Show` trait does not require any allocations. Closes #8242 Closes #9806
2014-02-20Mass rename if_ok! to try!Alex Crichton-7/+7
This "bubble up an error" macro was originally named if_ok! in order to get it landed, but after the fact it was discovered that this name is not exactly desirable. The name `if_ok!` isn't immediately clear that is has much to do with error handling, and it doesn't look fantastic in all contexts (if if_ok!(...) {}). In general, the agreed opinion about `if_ok!` is that is came in as subpar. The name `try!` is more invocative of error handling, it's shorter by 2 letters, and it looks fitting in almost all circumstances. One concern about the word `try!` is that it's too invocative of exceptions, but the belief is that this will be overcome with documentation and examples. Close #12037
2014-02-08auto merge of #12109 : omasanori/rust/small-fixes, r=sfacklerbors-13/+0
Most of them are to reduce warnings in testing builds.
2014-02-08Remove redundant Ord implementation for Version.OGINO Masanori-13/+0
I've forgot why we keep them, so let me know if you know their reason for existing. Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2014-02-08std::fmt: convert the formatting traits to a proper self.Huon Wilson-12/+13
Poly and String have polymorphic `impl`s and so require different method names.
2014-02-07Implement std::fmt::Show for semver::{Identifier, Version}Brendan Zabarauskas-15/+51
2014-02-07Make semver::Version fields publicBrendan Zabarauskas-5/+5
2014-02-03Move semver out of libextra.OGINO Masanori-0/+428
Done as a part of #8784. Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>