Donald Curtis
49495e9b06
Allow for builds to run simultaneously.
...
By recording each package's archive-entry separately we are able to
build each recipe independently and then compile the archive contents
afterwards.
2013-11-25 16:52:09 +00:00
Steve Purcell
0d5cbbc41a
Neater display of the results of building a package interactively
2013-11-13 20:12:14 +00:00
Steve Purcell
bec4005772
Don't pretty-print archive-contents
...
This step can take many seconds, and is performed for every package build.
2013-11-13 20:07:00 +00:00
Donald Curtis
8bc9315d36
Add case-insensitive compare for package name.
...
This makes it so single-file packages will be compared with the recipe
name in a case-insensitive way.
Closes #1106
2013-11-12 20:53:17 -08:00
Steve Purcell
2395623558
Check for response code from emacswiki
...
See #1151
2013-11-05 14:26:06 +00:00
Steve Purcell
c4fa0ea263
Fix extraction of wiki timestamps in Emacs HEAD
2013-10-20 10:26:19 +01:00
Steve Purcell
7fa83afc1c
Also exclude "tests.el" by default
2013-10-19 16:54:58 +01:00
Steve Purcell
5bfcbb77a8
Refuse to build single-file packages where source file name mismatches
...
If a package is called "foo", but contains only "bar.el", then the
package is arguably broken: the result will be a "foo.el" with the
contents of "bar".
This commit detects that situation and fails the package build.
/cc @milkypostman -- let's see what this breaks.
2013-10-04 14:00:29 +01:00
Steve Purcell
b41bb364f9
Call check-parens when building packages interactively (see #930 )
2013-08-06 15:15:54 +01:00
Steve Purcell
0c91eb0787
If available, wrap shell commands using GNU "timeout" to enforce a 30 minute limit
2013-07-24 15:40:59 +01:00
Steve Purcell
74c5af6e1a
Include *.el.in in the default files list, and rename to .el on copy
2013-07-22 10:11:44 +01:00
Steve Purcell
42f3015298
Ensure we use vectors for parsed package info, even in Emacs HEAD
...
`package-buffer-info` in Emacs HEAD now returns CL structs, which
subtly breaks package-build, since they still kinda look like vectors.
This commit introduces a wrapper for `package-buffer-info` so that we
get the same sort of data back in any Emacs version.
2013-07-22 10:10:28 +01:00
Donald Curtis
206f042576
fix to problem of parsing csv dates
...
closes #859
2013-07-10 00:08:31 -07:00
Donald Curtis
528b1320a7
fix eldoc typo and indentation
2013-07-08 23:52:06 -07:00
Donald Curtis
1636f0caa0
don't assume positive timezone offset
...
closes #859
2013-07-08 23:35:34 -07:00
Steve Purcell
d89cc499c5
Better method of showing archive-contents after building recipe
...
This removes a redundant "changed on disk" prompt when the file is
already open.
2013-06-02 10:54:19 +01:00
Steve Purcell
af903d39cf
Send output from info commands to "*package-build-info*" (see #786 )
2013-05-29 09:29:48 +01:00
Donald Curtis
ba57a4e35f
cleanup the info building code
...
use dolist instead of cl-loop
don't overwrite info files
remove texi files in the destination directory
2013-05-27 12:08:11 -05:00
Donald Curtis
65d2daafe5
don't force build of info files
2013-05-27 12:07:31 -05:00
Donald Curtis
fecc3a31fa
exclude texi(nfo)?
files from the final archive
2013-05-27 09:25:05 -05:00
Donald Curtis
4cdf235762
exclude -test.el and -tests.el in default :files
2013-05-27 09:00:35 -05:00
Donald Curtis
946c19b1df
add texinfo as a valid default extension
2013-05-26 15:18:51 -05:00
Donald Curtis
c59e177fba
force build info files and ignore errors
...
some files will not build but we try to generate the info anyways,
despite errors.
2013-05-26 15:18:51 -05:00
Wilfred Hughes
c5157b46ac
Generate .info and dir files.
...
Signed-off-by: Donald Curtis <dcurtis@milkbox.net>
2013-05-26 10:01:22 -05:00
Donald Curtis
3cd2169111
Revert "Generate .info and dir files."
...
This reverts commit 7ce4353889
.
Unintentionally pushod to master branch.
2013-05-22 17:46:47 -05:00
Wilfred Hughes
7ce4353889
Generate .info and dir files.
...
Signed-off-by: Donald Curtis <dcurtis@milkbox.net>
2013-05-22 17:45:32 -05:00
Steve Purcell
53c0639d2a
Don't enable any local variables while building packages
...
See bbatsov/zenburn-emacs#107
2013-05-13 15:47:16 +01:00
Steve Purcell
8a1a7f521f
Adjust description line in package-build.el
2013-05-13 08:16:19 +01:00
Donald Curtis
05f660e639
add :exclude handler
...
closes #709
2013-05-11 18:27:10 -05:00
Steve Purcell
d9ccbfc38d
Just add "[wiki]" etc to package descriptions, not "[source: wiki]"
2013-05-09 12:32:36 +01:00
Donald Curtis
9e60d5e557
look for -pkg.el.in
file in pkg-source directory
...
in case the `package.el` file is located in a subdirectory of the repository, we should look for the `package-pkg.el.in` file in that subdirectory.
2013-05-02 21:34:41 -05:00
Steve Purcell
ba91624a44
Update copyright dates
2013-04-25 12:10:51 +01:00
Steve Purcell
54da4472bf
Merge pull request #645 from milkypostman/cl-lib
...
Switch from cl to cl-lib
2013-04-08 01:10:39 -07:00
Donald Curtis
4f70dda369
don't delete the archive until a proper checkout, in case of error
2013-04-07 23:59:24 -05:00
Steve Purcell
aca476a4f8
Switch from cl to cl-lib
2013-04-07 15:29:04 -05:00
Steve Purcell
dd4983d59c
Slightly tidier code for rewriting Version -> X-Original-Version
2013-04-07 11:05:06 +01:00
Steve Purcell
8302f8d308
Save upstream Version header line as X-Original-Version
...
Closes #659
2013-04-07 11:02:27 +01:00
Donald Curtis
8d535c49ca
make remove message go do stderr
2013-04-01 12:43:10 -05:00
Steve Purcell
832741b2bb
Fix elint warnings about error symbol in condition-case
2013-03-31 12:25:47 +01:00
Donald Curtis
1de33588fc
always remove the old archive before rebuilding
2013-03-28 17:12:52 -05:00
Donald Curtis
c7eb3ce90b
improve removing of an archive
...
- removing an archive removes the file but doesn't dump the archive-contents each time
- removing an archive also removes the corresponding readme file
2013-03-28 17:12:52 -05:00
Donald Curtis
d2de69278e
use archive-file-name for find-package-file
...
removes some duplicated functionality
2013-03-28 17:12:52 -05:00
Donald Curtis
27a8d21c6f
add initialization variables for the internal lists since they can be nil
2013-03-28 17:12:52 -05:00
Steve Purcell
98663a34f8
Just warn if single-file packages are non-compliant
...
(Closes #625 )
2013-03-28 20:05:25 +00:00
Steve Purcell
0dca11c434
Ensure backup files are not created during single-file package build
2013-03-28 15:31:34 +00:00
Steve Purcell
52de0cde23
Add "foo.el ends here" trailing lines to single-file pkgs if missing
...
See #625
2013-03-28 15:22:15 +00:00
Steve Purcell
3e2e2e059e
Restrict local variables when opening package source files
2013-03-28 13:50:57 +00:00
Steve Purcell
a3d2ea68e3
Generate hard build errors when single-file packages are invalid
2013-03-28 11:13:24 +00:00
Steve Purcell
5893fb850e
Print warning when a single-file package fails package-buffer-info
2013-03-27 19:35:45 +00:00
Steve Purcell
4e5b2905b4
Preserve line-ending encoding of single-file packages
...
See #619
2013-03-27 18:22:09 +00:00
Steve Purcell
919bb8bb32
Don't insert-file-literally with single-file packages
...
See #619
2013-03-27 18:12:57 +00:00
Steve Purcell
41c3ab7c49
After interactively building a package, prompt to install locally
2013-03-26 21:09:50 +00:00
Steve Purcell
58bf468f42
When writing single-file packages, update Version header
...
Closes #588
2013-03-26 20:24:02 +00:00
Steve Purcell
da15f0e6c7
Merge pull request #607 from milkypostman/create-recipe-helpers
...
Helpers for recipe authors
2013-03-26 01:10:04 -07:00
Steve Purcell
7828be20df
Extract new pb/update-or-insert-version function
2013-03-25 14:23:47 +00:00
Steve Purcell
b2609a0a01
Extract default :files spec to a defconst
2013-03-24 13:17:25 +00:00
Steve Purcell
ae77c7ff77
Helpers for recipe authors
...
- Add helper function `package-build-create-recipe`
- Add `package-build-minor-mode`, enabled for recipes: C-c C-c builds current recipe
- Opening recipe files causes `package-build` to get loaded, and
`package-build-minor-mode` to get enabled
2013-03-24 13:10:45 +00:00
Steve Purcell
9d78285d60
Pop up the archive-contents buffer after package-build-current-recipe
2013-03-24 11:28:42 +00:00
Steve Purcell
cafc402e71
Add "dir" and "*.info" to the default :files spec
...
Since most packages do not have `dir` or `*.info` files, this required
changing the behaviour when a wildcard entry in `:file` expands to an
empty file list. Previously, an error would be raised in this case; now,
an error is raised only when the *entire* `:files` spec expands to an
empty file list.
The slight danger, then, is that certain build failures due to upstream
reorganisation of files might be less obvious.
2013-03-13 21:00:24 +00:00
Donald Curtis
23d30ceb0a
implement a better lazy loading of internal variables
2013-03-11 07:10:15 -05:00
Donald Curtis
0c0ee353e5
more typos...
2013-01-07 17:03:53 -06:00
Donald Curtis
2db7514abf
add missing initialize
2013-01-07 10:17:25 -06:00
Steve Purcell
c608db9192
Fix typo in package-build-reinitialize
2012-12-31 19:15:02 +00:00
Donald Curtis
4a526a4128
fix bug additional bug related to single builds
...
Because of some missing (package-build-initialize) calls, which were
mistyped, certain areas were not working. This fixes a few more of those typos.
2012-12-31 02:49:38 -06:00
Donald Curtis
8ec4cf3e2e
fix typo for initialization
2012-12-31 02:43:37 -06:00
Donald Curtis
c547ed422d
make read-recipe validate recipes
2012-12-30 22:28:03 -06:00
Donald Curtis
fb204b6429
add delayed initialization
...
the package-initialize function will not be called until it is needed.
by default this will be in any function that requires the variables
which it initializes. there is also a check so that the variables are
not repeatedly initialized.
2012-12-30 22:27:59 -06:00
Steve Purcell
3ee7f9f6aa
Use string-equals to compare wiki content hashes, not eq
2012-12-11 11:01:05 +00:00
Steve Purcell
01fd9ddcfc
Improve debug message output, and include build durations and timestamps
2012-12-05 14:08:40 +00:00
Steve Purcell
00236212d1
Store content hashes and timestamps for emacswiki files to minimise requests
...
If we can determine whether an emacswiki .el file has changed since
the last download, we can usually skip the follow-up request to
determine its last-modified timestamp.
2012-12-04 20:29:56 +00:00
Steve Purcell
00989cef16
Require lisp-mnt at the top level to avoid byte-compilation warnings
2012-12-04 20:29:56 +00:00
Steve Purcell
27f863039b
Don't complain about use of cl functions
2012-12-02 16:06:14 +00:00
Steve Purcell
db731db9d9
Fix byte compilation warning; use string-to-number instead of nonexistent parse-integer
2012-12-02 16:05:44 +00:00
Dmitry Gutov
bcd3ee7a02
The empty line(s) can be commented out or have whitespace
2012-11-29 09:36:12 +04:00
Dmitry Gutov
b66ca67da6
Remove the leading blank line in the readmes
2012-11-29 09:19:05 +04:00
Donald Curtis
521ccf03e0
Write the readme.txt files
...
Fixes #306
2012-11-09 10:51:29 -06:00
Steve Purcell
4b451f5dc7
Handle newer CVS date formats like "2001/08/26 22:16:22" which break date-to-time
2012-10-20 20:22:28 +01:00
Steve Purcell
a69ee2af7e
Force UTC timezone for cvs log
2012-10-20 20:21:52 +01:00
Donald Curtis
e20c3159ec
default head branch to "master"
2012-09-16 19:23:39 -05:00
Donald Curtis
87346e3cc1
Reset git repos to the HEAD branch on the remote.
...
Not all repositories use 'master' as the name of the master branch. Therefore, we need to query the remote server and see which branch is actually supposed to be tracked by default.
2012-09-16 18:11:21 -05:00
Steve Purcell
3a354296db
Display the "waiting" time between EmacsWiki requests using fewer decimal places
2012-09-16 09:01:53 +01:00
Steve Purcell
5a96d65f6e
Update git working dirs by using "remote update" then "reset --hard", in case of upstream forces
2012-09-15 20:27:09 +01:00
Steve Purcell
fed0c212bd
Introduce pb/slurp-file, and use it to remove some duplication
2012-09-15 13:14:52 +01:00
Steve Purcell
3c4546c6e8
Remove debugging output for date parsing (causes too many messages when scanning cvs logs)
2012-09-15 13:13:55 +01:00
Sebastian Wiesner
9592064902
Rename :cvs-module to :module
2012-09-15 13:55:15 +02:00
Sebastian Wiesner
9590a38d35
[ #177 ] Add support for CVS
2012-09-14 18:35:16 +02:00
Steve Purcell
9ddf14d643
If the last update to a package was at midnight, ensure the HHMM part of version is "0", not ""
...
See purcell/emacs.d#47
2012-09-06 14:23:41 +01:00
Steve Purcell
55139921af
Don't just remove *one* padding zero if there are two
2012-09-01 17:23:25 +01:00
Steve Purcell
84f54dd5fe
Ensure no zero-padding is used in the HHMM portion of version strings
2012-09-01 15:37:26 +01:00
Steve Purcell
efdbd825d5
Add .HHMM to versions so changes to frequently-updated packages can be detected ( fixes #250 )
2012-09-01 14:02:23 +01:00
Steve Purcell
84bd0175dc
Autoload a couple of the main interactive functions
2012-08-11 11:43:10 +01:00
Steve Purcell
a0e1212b3f
Add handy interactive package-build-current-recipe function
2012-08-11 11:42:44 +01:00
Steve Purcell
fdae5acf11
Use archive.json to populate the html package index, rather than ad-hoc sexp parsing
2012-07-25 14:01:04 +01:00
Donald Curtis
e13825d49a
add a newline at the end of output
2012-07-24 17:11:15 -05:00
Georgi Valkov
3f533208c5
Add functions that export to json
...
The list of recipies and the packages in the archive can be serialized
to json with:
- package-build-alist-as-json
- package-build-archive-alist-as-json
The json files can be used to simplify the generation of the html index
or serve as some form of API for non-lisp clients.
2012-07-21 15:31:47 -05:00
Donald Curtis
605b7a0ac7
Search files for "-pkg.el" file.
...
This will fix problems when the "-pkg.el" file is located in a
subdirectory as long as that file is included in the ":files" list
specified by the recipe, which *should* be the case anyways because
you would want that file installed as part of the package.
2012-07-03 12:22:45 -05:00
Donald Curtis
6c467379c2
don't downcase names of packages
2012-05-29 14:53:19 -05:00
Donald Curtis
42ac78dad8
Ignore duplicate files in tar.
...
Sometimes the name-pkg.el file is included but gets included twice
because we also add our own version. This causes problems when
installing. The `tar' will list both files and extract only one and
the tar mode for Emacs doesn't behave nicely.
2012-05-14 10:02:37 -05:00
Steve Purcell
e487e9ebf1
Enforce checkdoc-minor-mode
2012-05-07 11:43:21 +01:00
Donald Curtis
e456ea3cbf
Hotfix to let build continue after error.
2012-05-06 08:21:44 -05:00