diff --git a/basis/furnace/actions/actions.factor b/basis/furnace/actions/actions.factor
index 2a63489299..7505b3c612 100755
--- a/basis/furnace/actions/actions.factor
+++ b/basis/furnace/actions/actions.factor
@@ -79,7 +79,7 @@ TUPLE: action rest authorize init display validate submit ;
: revalidate-url ( -- url/f )
revalidate-url-key param
- dup [ >url [ same-host? ] keep and ] when ;
+ dup [ >url ensure-port [ same-host? ] keep and ] when ;
: validation-failed ( -- * )
post-request? revalidate-url and [
diff --git a/basis/html/components/components.factor b/basis/html/components/components.factor
index dafc9dd06b..6f35ba5d97 100644
--- a/basis/html/components/components.factor
+++ b/basis/html/components/components.factor
@@ -83,7 +83,7 @@ TUPLE: choice size multiple choices ;
choice new ;
: render-option ( text selected? -- )
- ;
diff --git a/basis/locals/locals-docs.factor b/basis/locals/locals-docs.factor
index 748c206cc0..3dfc17c081 100644
--- a/basis/locals/locals-docs.factor
+++ b/basis/locals/locals-docs.factor
@@ -65,7 +65,7 @@ HELP: [wlet
HELP: ::
{ $syntax ":: word ( bindings... -- outputs... ) body... ;" }
-{ $description "Defines a word with named inputs; it reads stack values into bindings from left to right, then executes the body with those bindings in lexical scope. Any " { $link POSTPONE: [| } ", " { $link POSTPONE: [let } " or " { $link POSTPONE: [wlet } " forms used in the body of the word definition are automatically closure-converted." }
+{ $description "Defines a word with named inputs; it reads stack values into bindings from left to right, then executes the body with those bindings in lexical scope." }
{ $notes "The output names do not affect the word's behavior, however the compiler attempts to check the stack effect as with other definitions." }
{ $examples "See " { $link POSTPONE: [| } ", " { $link POSTPONE: [let } " and " { $link POSTPONE: [wlet } "." } ;
diff --git a/basis/syndication/syndication.factor b/basis/syndication/syndication.factor
index ca7511f1af..aca09b939c 100644
--- a/basis/syndication/syndication.factor
+++ b/basis/syndication/syndication.factor
@@ -69,11 +69,15 @@ TUPLE: entry title url description date ;
[ "item" tags-named [ rss2.0-entry ] map set-entries ]
tri ;
+: atom-entry-link ( tag -- url/f )
+ "link" tags-named [ "rel" swap at "alternate" = ] find nip
+ dup [ "href" swap at >url ] when ;
+
: atom1.0-entry ( tag -- entry )
entry new
swap {
[ "title" tag-named children>string >>title ]
- [ "link" tag-named "href" swap at >url >>url ]
+ [ atom-entry-link >>url ]
[
{ "content" "summary" } any-tag-named
dup children>> [ string? not ] contains?
diff --git a/basis/urls/urls-tests.factor b/basis/urls/urls-tests.factor
index c98802657b..cac206bf3c 100644
--- a/basis/urls/urls-tests.factor
+++ b/basis/urls/urls-tests.factor
@@ -10,7 +10,6 @@ arrays kernel assocs present accessors ;
{ host "www.apple.com" }
{ port 1234 }
{ path "/a/path" }
- { raw-query "a=b" }
{ query H{ { "a" "b" } } }
{ anchor "foo" }
}
@@ -21,7 +20,6 @@ arrays kernel assocs present accessors ;
{ protocol "http" }
{ host "www.apple.com" }
{ path "/a/path" }
- { raw-query "a=b" }
{ query H{ { "a" "b" } } }
{ anchor "foo" }
}
@@ -59,7 +57,6 @@ arrays kernel assocs present accessors ;
{
T{ url
{ path "bar" }
- { raw-query "a=b" }
{ query H{ { "a" "b" } } }
}
"bar?a=b"
@@ -213,7 +210,6 @@ urls [
T{ url
{ protocol "http" }
{ host "localhost" }
- { raw-query "foo=bar" }
{ query H{ { "foo" "bar" } } }
{ path "/" }
}
@@ -224,7 +220,6 @@ urls [
T{ url
{ protocol "http" }
{ host "localhost" }
- { raw-query "foo=bar" }
{ query H{ { "foo" "bar" } } }
{ path "/" }
}
diff --git a/basis/urls/urls.factor b/basis/urls/urls.factor
index fb56e274da..5cc8c9693b 100644
--- a/basis/urls/urls.factor
+++ b/basis/urls/urls.factor
@@ -8,7 +8,7 @@ strings.parser lexer prettyprint.backend hashtables present
peg.ebnf urls.encoding ;
IN: urls
-TUPLE: url protocol username password host port path raw-query query anchor ;
+TUPLE: url protocol username password host port path query anchor ;
: This is the Factor
documentation, generated offline from a
- load-everything
image. The Factor UI also
- includes a documentation browser tool.load-everything
image. If you want, you can also browse the
+ documentation from within the Factor UI.
You may search article titles below.
+You may search article titles below; for example, try searching for "HTTP".
Author: |
---|
diff --git a/extra/webapps/planet/planet.factor b/extra/webapps/planet/planet.factor index cd6e183d14..00d843573c 100755 --- a/extra/webapps/planet/planet.factor +++ b/extra/webapps/planet/planet.factor @@ -166,14 +166,14 @@ posting "POSTINGS" [ f